2052: --
2053: -- bulk performance
2054: --
2055: l_balance_type_code VARCHAR2(1);
2056: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
2057: l_log_module VARCHAR2(240);
2058:
2059: --
2060: -- Upgrade strategy
2122: ') <> 'ENDORSEMENT'
2123: THEN
2124:
2125: --
2126: XLA_AE_LINES_PKG.SetNewLine;
2127:
2128: p_balance_type_code := l_balance_type_code;
2129: -- set the flag so later we will know whether the gain loss line needs to be created
2130:
2134:
2135: --
2136: -- bulk performance
2137: --
2138: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
2139: p_header_num => 0); -- 4262811
2140: --
2141: -- set accounting line options
2142: --
2139: p_header_num => 0); -- 4262811
2140: --
2141: -- set accounting line options
2142: --
2143: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
2144: p_natural_side_code => 'C'
2145: , p_gain_or_loss_flag => 'N'
2146: , p_gl_transfer_mode_code => 'S'
2147: , p_acct_entry_type_code => 'A'
2153: --
2154: --
2155: -- set accounting line type info
2156: --
2157: xla_ae_lines_pkg.SetAcctLineType
2158: (p_component_type => l_component_type
2159: ,p_event_type_code => l_event_type_code
2160: ,p_line_definition_owner_code => l_line_definition_owner_code
2161: ,p_line_definition_code => l_line_definition_code
2167: ,p_event_class_code => l_event_class_code);
2168: --
2169: -- set accounting class
2170: --
2171: xla_ae_lines_pkg.SetAcctClass(
2172: p_accounting_class_code => 'ADJ'
2173: , p_ae_header_id => l_ae_header_id
2174: );
2175:
2175:
2176: --
2177: -- set rounding class
2178: --
2179: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
2180: 'RECEIVABLE';
2181:
2182: --
2183: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
2179: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
2180: 'RECEIVABLE';
2181:
2182: --
2183: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
2184: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
2185: --
2186: -- bulk performance
2187: --
2180: 'RECEIVABLE';
2181:
2182: --
2183: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
2184: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
2185: --
2186: -- bulk performance
2187: --
2188: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
2184: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
2185: --
2186: -- bulk performance
2187: --
2188: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
2189:
2190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
2191: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
2192:
2186: -- bulk performance
2187: --
2188: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
2189:
2190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
2191: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
2192:
2193: -- 4955764
2194: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
2191: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
2192:
2193: -- 4955764
2194: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2195: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
2196:
2197: -- 4458381 Public Sector Enh
2198:
2224: l_rec_acct_attrs.array_num_value(10) := p_source_24;
2225: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
2226: l_rec_acct_attrs.array_char_value(11) := p_source_25;
2227:
2228: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
2229: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
2230:
2231: ---------------------------------------------------------------------------------------------------------------
2232: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2225: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
2226: l_rec_acct_attrs.array_char_value(11) := p_source_25;
2227:
2228: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
2229: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
2230:
2231: ---------------------------------------------------------------------------------------------------------------
2232: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2233: ---------------------------------------------------------------------------------------------------------------
2228: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
2229: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
2230:
2231: ---------------------------------------------------------------------------------------------------------------
2232: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2233: ---------------------------------------------------------------------------------------------------------------
2234: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2235:
2236: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2230:
2231: ---------------------------------------------------------------------------------------------------------------
2232: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2233: ---------------------------------------------------------------------------------------------------------------
2234: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2235:
2236: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2237: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2238:
2232: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2233: ---------------------------------------------------------------------------------------------------------------
2234: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2235:
2236: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2237: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2238:
2239: IF xla_accounting_cache_pkg.GetValueChar
2240: (p_source_code => 'LEDGER_CATEGORY_CODE'
2233: ---------------------------------------------------------------------------------------------------------------
2234: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2235:
2236: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2237: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2238:
2239: IF xla_accounting_cache_pkg.GetValueChar
2240: (p_source_code => 'LEDGER_CATEGORY_CODE'
2241: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
2244: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
2245: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
2246: )
2247: THEN
2248: xla_ae_lines_pkg.BflowUpgEntry
2249: (p_business_method_code => l_bflow_method_code
2250: ,p_business_class_code => l_bflow_class_code
2251: ,p_balance_type => l_balance_type_code);
2252: ELSE
2284: , x_value_type_code => l_adr_value_type_code
2285: , p_side => 'NA'
2286: );
2287:
2288: xla_ae_lines_pkg.set_ccid(
2289: p_code_combination_id => l_ccid
2290: , p_value_type_code => l_adr_value_type_code
2291: , p_transaction_coa_id => l_adr_transaction_coa_id
2292: , p_accounting_coa_id => l_adr_accounting_coa_id
2320: xla_accounting_err_pkg.build_message
2321: (p_appli_s_name => 'XLA'
2322: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
2323: ,p_token_1 => 'LINE_NUMBER'
2324: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
2325: ,p_token_2 => 'LINE_TYPE_NAME'
2326: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
2327: l_component_type
2328: ,l_component_code
2356: --
2357: --
2358: ------------------------------------------------------------------------------------------------
2359: -- 4219869 Business Flow
2360: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
2361: -- Prior Entry. Currently, the following code is always generated.
2362: ------------------------------------------------------------------------------------------------
2363: XLA_AE_LINES_PKG.ValidateCurrentLine;
2364:
2359: -- 4219869 Business Flow
2360: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
2361: -- Prior Entry. Currently, the following code is always generated.
2362: ------------------------------------------------------------------------------------------------
2363: XLA_AE_LINES_PKG.ValidateCurrentLine;
2364:
2365: ------------------------------------------------------------------------------------
2366: -- 4219869 Business Flow
2367: -- Populated credit and debit amounts -- Need to generate this within IF
2365: ------------------------------------------------------------------------------------
2366: -- 4219869 Business Flow
2367: -- Populated credit and debit amounts -- Need to generate this within IF
2368: ------------------------------------------------------------------------------------
2369: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
2370:
2371: ----------------------------------------------------------------------------------
2372: -- 4219869 Business Flow
2373: -- Update journal entry status -- Need to generate this within IF
2397: -- To allow MPA report to determine if it should generate report process
2398: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
2399: ------------------------------------------------------------------------------------------
2400:
2401: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
2402: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
2403: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
2404: -- call ADRs
2405: -- Bug 4922099
2398: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
2399: ------------------------------------------------------------------------------------------
2400:
2401: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
2402: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
2403: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
2404: -- call ADRs
2405: -- Bug 4922099
2406: --
2422: , x_value_type_code => l_adr_value_type_code
2423: , p_side => 'NA'
2424: );
2425:
2426: xla_ae_lines_pkg.set_ccid(
2427: p_code_combination_id => l_ccid
2428: , p_value_type_code => l_adr_value_type_code
2429: , p_transaction_coa_id => l_adr_transaction_coa_id
2430: , p_accounting_coa_id => l_adr_accounting_coa_id
2445:
2446: --
2447: -- Update the line information that should be overwritten
2448: --
2449: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
2450: p_header_num => 1);
2451: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
2452:
2453: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
2447: -- Update the line information that should be overwritten
2448: --
2449: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
2450: p_header_num => 1);
2451: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
2452:
2453: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
2454:
2455: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
2449: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
2450: p_header_num => 1);
2451: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
2452:
2453: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
2454:
2455: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
2456: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
2457: END IF;
2452:
2453: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
2454:
2455: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
2456: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
2457: END IF;
2458:
2459: --
2460: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
2459: --
2460: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
2461: --
2462: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
2463: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
2464: ELSE
2465: ---------------------------------------------------------------------------------------------------
2466: -- 4262811a Switch Sign
2467: ---------------------------------------------------------------------------------------------------
2464: ELSE
2465: ---------------------------------------------------------------------------------------------------
2466: -- 4262811a Switch Sign
2467: ---------------------------------------------------------------------------------------------------
2468: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2469: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2471: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2465: ---------------------------------------------------------------------------------------------------
2466: -- 4262811a Switch Sign
2467: ---------------------------------------------------------------------------------------------------
2468: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2469: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2471: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2473: -- 5132302
2466: -- 4262811a Switch Sign
2467: ---------------------------------------------------------------------------------------------------
2468: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2469: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2471: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2473: -- 5132302
2474: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2467: ---------------------------------------------------------------------------------------------------
2468: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2469: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2471: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2473: -- 5132302
2474: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2475: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2468: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2469: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2471: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2473: -- 5132302
2474: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2475: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2476:
2470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2471: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2473: -- 5132302
2474: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2475: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2476:
2477: END IF;
2478:
2471: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2472: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2473: -- 5132302
2474: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2475: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2476:
2477: END IF;
2478:
2479: -- 4955764
2476:
2477: END IF;
2478:
2479: -- 4955764
2480: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2481: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
2482:
2483:
2484: XLA_AE_LINES_PKG.ValidateCurrentLine;
2480: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2481: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
2482:
2483:
2484: XLA_AE_LINES_PKG.ValidateCurrentLine;
2485: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
2486:
2487: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
2488: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
2481: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
2482:
2483:
2484: XLA_AE_LINES_PKG.ValidateCurrentLine;
2485: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
2486:
2487: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
2488: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
2489: ,p_balance_type_code => l_balance_type_code);
2622: --
2623: -- bulk performance
2624: --
2625: l_balance_type_code VARCHAR2(1);
2626: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
2627: l_log_module VARCHAR2(240);
2628:
2629: --
2630: -- Upgrade strategy
2692: ') = 'ENDORSEMENT'
2693: THEN
2694:
2695: --
2696: XLA_AE_LINES_PKG.SetNewLine;
2697:
2698: p_balance_type_code := l_balance_type_code;
2699: -- set the flag so later we will know whether the gain loss line needs to be created
2700:
2704:
2705: --
2706: -- bulk performance
2707: --
2708: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
2709: p_header_num => 0); -- 4262811
2710: --
2711: -- set accounting line options
2712: --
2709: p_header_num => 0); -- 4262811
2710: --
2711: -- set accounting line options
2712: --
2713: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
2714: p_natural_side_code => 'C'
2715: , p_gain_or_loss_flag => 'N'
2716: , p_gl_transfer_mode_code => 'S'
2717: , p_acct_entry_type_code => 'A'
2723: --
2724: --
2725: -- set accounting line type info
2726: --
2727: xla_ae_lines_pkg.SetAcctLineType
2728: (p_component_type => l_component_type
2729: ,p_event_type_code => l_event_type_code
2730: ,p_line_definition_owner_code => l_line_definition_owner_code
2731: ,p_line_definition_code => l_line_definition_code
2737: ,p_event_class_code => l_event_class_code);
2738: --
2739: -- set accounting class
2740: --
2741: xla_ae_lines_pkg.SetAcctClass(
2742: p_accounting_class_code => 'ENDORSEMENT'
2743: , p_ae_header_id => l_ae_header_id
2744: );
2745:
2745:
2746: --
2747: -- set rounding class
2748: --
2749: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
2750: 'RECEIVABLE';
2751:
2752: --
2753: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
2749: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
2750: 'RECEIVABLE';
2751:
2752: --
2753: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
2754: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
2755: --
2756: -- bulk performance
2757: --
2750: 'RECEIVABLE';
2751:
2752: --
2753: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
2754: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
2755: --
2756: -- bulk performance
2757: --
2758: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
2754: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
2755: --
2756: -- bulk performance
2757: --
2758: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
2759:
2760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
2761: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
2762:
2756: -- bulk performance
2757: --
2758: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
2759:
2760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
2761: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
2762:
2763: -- 4955764
2764: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
2761: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
2762:
2763: -- 4955764
2764: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2765: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
2766:
2767: -- 4458381 Public Sector Enh
2768:
2794: l_rec_acct_attrs.array_num_value(10) := p_source_24;
2795: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
2796: l_rec_acct_attrs.array_char_value(11) := p_source_25;
2797:
2798: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
2799: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
2800:
2801: ---------------------------------------------------------------------------------------------------------------
2802: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2795: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
2796: l_rec_acct_attrs.array_char_value(11) := p_source_25;
2797:
2798: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
2799: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
2800:
2801: ---------------------------------------------------------------------------------------------------------------
2802: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2803: ---------------------------------------------------------------------------------------------------------------
2798: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
2799: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
2800:
2801: ---------------------------------------------------------------------------------------------------------------
2802: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2803: ---------------------------------------------------------------------------------------------------------------
2804: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2805:
2806: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2800:
2801: ---------------------------------------------------------------------------------------------------------------
2802: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2803: ---------------------------------------------------------------------------------------------------------------
2804: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2805:
2806: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2807: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2808:
2802: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2803: ---------------------------------------------------------------------------------------------------------------
2804: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2805:
2806: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2807: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2808:
2809: IF xla_accounting_cache_pkg.GetValueChar
2810: (p_source_code => 'LEDGER_CATEGORY_CODE'
2803: ---------------------------------------------------------------------------------------------------------------
2804: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2805:
2806: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2807: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2808:
2809: IF xla_accounting_cache_pkg.GetValueChar
2810: (p_source_code => 'LEDGER_CATEGORY_CODE'
2811: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
2814: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
2815: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
2816: )
2817: THEN
2818: xla_ae_lines_pkg.BflowUpgEntry
2819: (p_business_method_code => l_bflow_method_code
2820: ,p_business_class_code => l_bflow_class_code
2821: ,p_balance_type => l_balance_type_code);
2822: ELSE
2854: , x_value_type_code => l_adr_value_type_code
2855: , p_side => 'NA'
2856: );
2857:
2858: xla_ae_lines_pkg.set_ccid(
2859: p_code_combination_id => l_ccid
2860: , p_value_type_code => l_adr_value_type_code
2861: , p_transaction_coa_id => l_adr_transaction_coa_id
2862: , p_accounting_coa_id => l_adr_accounting_coa_id
2890: xla_accounting_err_pkg.build_message
2891: (p_appli_s_name => 'XLA'
2892: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
2893: ,p_token_1 => 'LINE_NUMBER'
2894: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
2895: ,p_token_2 => 'LINE_TYPE_NAME'
2896: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
2897: l_component_type
2898: ,l_component_code
2926: --
2927: --
2928: ------------------------------------------------------------------------------------------------
2929: -- 4219869 Business Flow
2930: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
2931: -- Prior Entry. Currently, the following code is always generated.
2932: ------------------------------------------------------------------------------------------------
2933: XLA_AE_LINES_PKG.ValidateCurrentLine;
2934:
2929: -- 4219869 Business Flow
2930: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
2931: -- Prior Entry. Currently, the following code is always generated.
2932: ------------------------------------------------------------------------------------------------
2933: XLA_AE_LINES_PKG.ValidateCurrentLine;
2934:
2935: ------------------------------------------------------------------------------------
2936: -- 4219869 Business Flow
2937: -- Populated credit and debit amounts -- Need to generate this within IF
2935: ------------------------------------------------------------------------------------
2936: -- 4219869 Business Flow
2937: -- Populated credit and debit amounts -- Need to generate this within IF
2938: ------------------------------------------------------------------------------------
2939: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
2940:
2941: ----------------------------------------------------------------------------------
2942: -- 4219869 Business Flow
2943: -- Update journal entry status -- Need to generate this within IF
2967: -- To allow MPA report to determine if it should generate report process
2968: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
2969: ------------------------------------------------------------------------------------------
2970:
2971: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
2972: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
2973: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
2974: -- call ADRs
2975: -- Bug 4922099
2968: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
2969: ------------------------------------------------------------------------------------------
2970:
2971: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
2972: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
2973: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
2974: -- call ADRs
2975: -- Bug 4922099
2976: --
2992: , x_value_type_code => l_adr_value_type_code
2993: , p_side => 'NA'
2994: );
2995:
2996: xla_ae_lines_pkg.set_ccid(
2997: p_code_combination_id => l_ccid
2998: , p_value_type_code => l_adr_value_type_code
2999: , p_transaction_coa_id => l_adr_transaction_coa_id
3000: , p_accounting_coa_id => l_adr_accounting_coa_id
3015:
3016: --
3017: -- Update the line information that should be overwritten
3018: --
3019: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3020: p_header_num => 1);
3021: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3022:
3023: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3017: -- Update the line information that should be overwritten
3018: --
3019: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3020: p_header_num => 1);
3021: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3022:
3023: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3024:
3025: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3019: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3020: p_header_num => 1);
3021: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3022:
3023: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3024:
3025: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3026: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3027: END IF;
3022:
3023: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3024:
3025: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3026: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3027: END IF;
3028:
3029: --
3030: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3029: --
3030: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3031: --
3032: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
3033: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
3034: ELSE
3035: ---------------------------------------------------------------------------------------------------
3036: -- 4262811a Switch Sign
3037: ---------------------------------------------------------------------------------------------------
3034: ELSE
3035: ---------------------------------------------------------------------------------------------------
3036: -- 4262811a Switch Sign
3037: ---------------------------------------------------------------------------------------------------
3038: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3039: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3041: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3042: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3035: ---------------------------------------------------------------------------------------------------
3036: -- 4262811a Switch Sign
3037: ---------------------------------------------------------------------------------------------------
3038: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3039: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3041: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3042: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3043: -- 5132302
3036: -- 4262811a Switch Sign
3037: ---------------------------------------------------------------------------------------------------
3038: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3039: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3041: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3042: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3043: -- 5132302
3044: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3037: ---------------------------------------------------------------------------------------------------
3038: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3039: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3041: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3042: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3043: -- 5132302
3044: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3045: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3038: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3039: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3041: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3042: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3043: -- 5132302
3044: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3045: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3046:
3040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3041: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3042: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3043: -- 5132302
3044: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3045: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3046:
3047: END IF;
3048:
3041: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3042: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3043: -- 5132302
3044: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3045: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3046:
3047: END IF;
3048:
3049: -- 4955764
3046:
3047: END IF;
3048:
3049: -- 4955764
3050: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3051: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3052:
3053:
3054: XLA_AE_LINES_PKG.ValidateCurrentLine;
3050: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3051: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3052:
3053:
3054: XLA_AE_LINES_PKG.ValidateCurrentLine;
3055: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3056:
3057: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3058: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3051: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3052:
3053:
3054: XLA_AE_LINES_PKG.ValidateCurrentLine;
3055: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3056:
3057: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3058: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3059: ,p_balance_type_code => l_balance_type_code);
3190: --
3191: -- bulk performance
3192: --
3193: l_balance_type_code VARCHAR2(1);
3194: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
3195: l_log_module VARCHAR2(240);
3196:
3197: --
3198: -- Upgrade strategy
3260: ') = 'FINCHRG_NON_REC_TAX'
3261: THEN
3262:
3263: --
3264: XLA_AE_LINES_PKG.SetNewLine;
3265:
3266: p_balance_type_code := l_balance_type_code;
3267: -- set the flag so later we will know whether the gain loss line needs to be created
3268:
3272:
3273: --
3274: -- bulk performance
3275: --
3276: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
3277: p_header_num => 0); -- 4262811
3278: --
3279: -- set accounting line options
3280: --
3277: p_header_num => 0); -- 4262811
3278: --
3279: -- set accounting line options
3280: --
3281: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
3282: p_natural_side_code => 'C'
3283: , p_gain_or_loss_flag => 'N'
3284: , p_gl_transfer_mode_code => 'S'
3285: , p_acct_entry_type_code => 'A'
3291: --
3292: --
3293: -- set accounting line type info
3294: --
3295: xla_ae_lines_pkg.SetAcctLineType
3296: (p_component_type => l_component_type
3297: ,p_event_type_code => l_event_type_code
3298: ,p_line_definition_owner_code => l_line_definition_owner_code
3299: ,p_line_definition_code => l_line_definition_code
3305: ,p_event_class_code => l_event_class_code);
3306: --
3307: -- set accounting class
3308: --
3309: xla_ae_lines_pkg.SetAcctClass(
3310: p_accounting_class_code => 'CHARGES'
3311: , p_ae_header_id => l_ae_header_id
3312: );
3313:
3313:
3314: --
3315: -- set rounding class
3316: --
3317: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3318: 'RECEIVABLE';
3319:
3320: --
3321: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3317: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3318: 'RECEIVABLE';
3319:
3320: --
3321: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3322: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3323: --
3324: -- bulk performance
3325: --
3318: 'RECEIVABLE';
3319:
3320: --
3321: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3322: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3323: --
3324: -- bulk performance
3325: --
3326: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3322: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3323: --
3324: -- bulk performance
3325: --
3326: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3327:
3328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3329: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3330:
3324: -- bulk performance
3325: --
3326: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3327:
3328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3329: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3330:
3331: -- 4955764
3332: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3329: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3330:
3331: -- 4955764
3332: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3333: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
3334:
3335: -- 4458381 Public Sector Enh
3336:
3362: l_rec_acct_attrs.array_num_value(10) := p_source_24;
3363: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3364: l_rec_acct_attrs.array_char_value(11) := p_source_25;
3365:
3366: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3367: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3368:
3369: ---------------------------------------------------------------------------------------------------------------
3370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3363: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3364: l_rec_acct_attrs.array_char_value(11) := p_source_25;
3365:
3366: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3367: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3368:
3369: ---------------------------------------------------------------------------------------------------------------
3370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3371: ---------------------------------------------------------------------------------------------------------------
3366: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3367: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3368:
3369: ---------------------------------------------------------------------------------------------------------------
3370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3371: ---------------------------------------------------------------------------------------------------------------
3372: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3373:
3374: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3368:
3369: ---------------------------------------------------------------------------------------------------------------
3370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3371: ---------------------------------------------------------------------------------------------------------------
3372: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3373:
3374: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3375: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3376:
3370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3371: ---------------------------------------------------------------------------------------------------------------
3372: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3373:
3374: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3375: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3376:
3377: IF xla_accounting_cache_pkg.GetValueChar
3378: (p_source_code => 'LEDGER_CATEGORY_CODE'
3371: ---------------------------------------------------------------------------------------------------------------
3372: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3373:
3374: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3375: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3376:
3377: IF xla_accounting_cache_pkg.GetValueChar
3378: (p_source_code => 'LEDGER_CATEGORY_CODE'
3379: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
3382: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
3383: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
3384: )
3385: THEN
3386: xla_ae_lines_pkg.BflowUpgEntry
3387: (p_business_method_code => l_bflow_method_code
3388: ,p_business_class_code => l_bflow_class_code
3389: ,p_balance_type => l_balance_type_code);
3390: ELSE
3422: , x_value_type_code => l_adr_value_type_code
3423: , p_side => 'NA'
3424: );
3425:
3426: xla_ae_lines_pkg.set_ccid(
3427: p_code_combination_id => l_ccid
3428: , p_value_type_code => l_adr_value_type_code
3429: , p_transaction_coa_id => l_adr_transaction_coa_id
3430: , p_accounting_coa_id => l_adr_accounting_coa_id
3458: xla_accounting_err_pkg.build_message
3459: (p_appli_s_name => 'XLA'
3460: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
3461: ,p_token_1 => 'LINE_NUMBER'
3462: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
3463: ,p_token_2 => 'LINE_TYPE_NAME'
3464: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
3465: l_component_type
3466: ,l_component_code
3494: --
3495: --
3496: ------------------------------------------------------------------------------------------------
3497: -- 4219869 Business Flow
3498: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
3499: -- Prior Entry. Currently, the following code is always generated.
3500: ------------------------------------------------------------------------------------------------
3501: XLA_AE_LINES_PKG.ValidateCurrentLine;
3502:
3497: -- 4219869 Business Flow
3498: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
3499: -- Prior Entry. Currently, the following code is always generated.
3500: ------------------------------------------------------------------------------------------------
3501: XLA_AE_LINES_PKG.ValidateCurrentLine;
3502:
3503: ------------------------------------------------------------------------------------
3504: -- 4219869 Business Flow
3505: -- Populated credit and debit amounts -- Need to generate this within IF
3503: ------------------------------------------------------------------------------------
3504: -- 4219869 Business Flow
3505: -- Populated credit and debit amounts -- Need to generate this within IF
3506: ------------------------------------------------------------------------------------
3507: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3508:
3509: ----------------------------------------------------------------------------------
3510: -- 4219869 Business Flow
3511: -- Update journal entry status -- Need to generate this within IF
3535: -- To allow MPA report to determine if it should generate report process
3536: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
3537: ------------------------------------------------------------------------------------------
3538:
3539: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
3540: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
3541: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
3542: -- call ADRs
3543: -- Bug 4922099
3536: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
3537: ------------------------------------------------------------------------------------------
3538:
3539: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
3540: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
3541: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
3542: -- call ADRs
3543: -- Bug 4922099
3544: --
3560: , x_value_type_code => l_adr_value_type_code
3561: , p_side => 'NA'
3562: );
3563:
3564: xla_ae_lines_pkg.set_ccid(
3565: p_code_combination_id => l_ccid
3566: , p_value_type_code => l_adr_value_type_code
3567: , p_transaction_coa_id => l_adr_transaction_coa_id
3568: , p_accounting_coa_id => l_adr_accounting_coa_id
3583:
3584: --
3585: -- Update the line information that should be overwritten
3586: --
3587: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3588: p_header_num => 1);
3589: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3590:
3591: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3585: -- Update the line information that should be overwritten
3586: --
3587: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3588: p_header_num => 1);
3589: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3590:
3591: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3592:
3593: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3587: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3588: p_header_num => 1);
3589: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3590:
3591: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3592:
3593: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3594: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3595: END IF;
3590:
3591: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3592:
3593: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3594: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3595: END IF;
3596:
3597: --
3598: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3597: --
3598: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3599: --
3600: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
3601: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
3602: ELSE
3603: ---------------------------------------------------------------------------------------------------
3604: -- 4262811a Switch Sign
3605: ---------------------------------------------------------------------------------------------------
3602: ELSE
3603: ---------------------------------------------------------------------------------------------------
3604: -- 4262811a Switch Sign
3605: ---------------------------------------------------------------------------------------------------
3606: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3607: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3609: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3603: ---------------------------------------------------------------------------------------------------
3604: -- 4262811a Switch Sign
3605: ---------------------------------------------------------------------------------------------------
3606: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3607: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3609: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3611: -- 5132302
3604: -- 4262811a Switch Sign
3605: ---------------------------------------------------------------------------------------------------
3606: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3607: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3609: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3611: -- 5132302
3612: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3605: ---------------------------------------------------------------------------------------------------
3606: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3607: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3609: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3611: -- 5132302
3612: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3613: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3606: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3607: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3609: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3611: -- 5132302
3612: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3613: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3614:
3608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3609: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3611: -- 5132302
3612: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3613: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3614:
3615: END IF;
3616:
3609: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3611: -- 5132302
3612: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3613: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3614:
3615: END IF;
3616:
3617: -- 4955764
3614:
3615: END IF;
3616:
3617: -- 4955764
3618: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3619: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3620:
3621:
3622: XLA_AE_LINES_PKG.ValidateCurrentLine;
3618: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3619: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3620:
3621:
3622: XLA_AE_LINES_PKG.ValidateCurrentLine;
3623: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3624:
3625: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3626: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3619: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3620:
3621:
3622: XLA_AE_LINES_PKG.ValidateCurrentLine;
3623: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3624:
3625: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3626: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3627: ,p_balance_type_code => l_balance_type_code);
3758: --
3759: -- bulk performance
3760: --
3761: l_balance_type_code VARCHAR2(1);
3762: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
3763: l_log_module VARCHAR2(240);
3764:
3765: --
3766: -- Upgrade strategy
3826: ') = 'DEFERRED_TAX'
3827: THEN
3828:
3829: --
3830: XLA_AE_LINES_PKG.SetNewLine;
3831:
3832: p_balance_type_code := l_balance_type_code;
3833: -- set the flag so later we will know whether the gain loss line needs to be created
3834:
3838:
3839: --
3840: -- bulk performance
3841: --
3842: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
3843: p_header_num => 0); -- 4262811
3844: --
3845: -- set accounting line options
3846: --
3843: p_header_num => 0); -- 4262811
3844: --
3845: -- set accounting line options
3846: --
3847: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
3848: p_natural_side_code => 'C'
3849: , p_gain_or_loss_flag => 'N'
3850: , p_gl_transfer_mode_code => 'S'
3851: , p_acct_entry_type_code => 'A'
3857: --
3858: --
3859: -- set accounting line type info
3860: --
3861: xla_ae_lines_pkg.SetAcctLineType
3862: (p_component_type => l_component_type
3863: ,p_event_type_code => l_event_type_code
3864: ,p_line_definition_owner_code => l_line_definition_owner_code
3865: ,p_line_definition_code => l_line_definition_code
3871: ,p_event_class_code => l_event_class_code);
3872: --
3873: -- set accounting class
3874: --
3875: xla_ae_lines_pkg.SetAcctClass(
3876: p_accounting_class_code => 'DEFERRED_TAX'
3877: , p_ae_header_id => l_ae_header_id
3878: );
3879:
3879:
3880: --
3881: -- set rounding class
3882: --
3883: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3884: 'RECEIVABLE';
3885:
3886: --
3887: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3883: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3884: 'RECEIVABLE';
3885:
3886: --
3887: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3888: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3889: --
3890: -- bulk performance
3891: --
3884: 'RECEIVABLE';
3885:
3886: --
3887: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3888: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3889: --
3890: -- bulk performance
3891: --
3892: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3888: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3889: --
3890: -- bulk performance
3891: --
3892: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3893:
3894: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3895: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3896:
3890: -- bulk performance
3891: --
3892: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3893:
3894: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3895: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3896:
3897: -- 4955764
3898: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3894: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3895: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
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('header_index'));
3900:
3901: -- 4458381 Public Sector Enh
3902:
3928: l_rec_acct_attrs.array_num_value(10) := p_source_24;
3929: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3930: l_rec_acct_attrs.array_char_value(11) := p_source_25;
3931:
3932: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3933: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3934:
3935: ---------------------------------------------------------------------------------------------------------------
3936: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3929: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3930: l_rec_acct_attrs.array_char_value(11) := p_source_25;
3931:
3932: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3933: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3934:
3935: ---------------------------------------------------------------------------------------------------------------
3936: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3937: ---------------------------------------------------------------------------------------------------------------
3932: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3933: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3934:
3935: ---------------------------------------------------------------------------------------------------------------
3936: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3937: ---------------------------------------------------------------------------------------------------------------
3938: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3939:
3940: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3934:
3935: ---------------------------------------------------------------------------------------------------------------
3936: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3937: ---------------------------------------------------------------------------------------------------------------
3938: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3939:
3940: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3941: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3942:
3936: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3937: ---------------------------------------------------------------------------------------------------------------
3938: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3939:
3940: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3941: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3942:
3943: IF xla_accounting_cache_pkg.GetValueChar
3944: (p_source_code => 'LEDGER_CATEGORY_CODE'
3937: ---------------------------------------------------------------------------------------------------------------
3938: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3939:
3940: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3941: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3942:
3943: IF xla_accounting_cache_pkg.GetValueChar
3944: (p_source_code => 'LEDGER_CATEGORY_CODE'
3945: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
3948: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
3949: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
3950: )
3951: THEN
3952: xla_ae_lines_pkg.BflowUpgEntry
3953: (p_business_method_code => l_bflow_method_code
3954: ,p_business_class_code => l_bflow_class_code
3955: ,p_balance_type => l_balance_type_code);
3956: ELSE
3988: , x_value_type_code => l_adr_value_type_code
3989: , p_side => 'NA'
3990: );
3991:
3992: xla_ae_lines_pkg.set_ccid(
3993: p_code_combination_id => l_ccid
3994: , p_value_type_code => l_adr_value_type_code
3995: , p_transaction_coa_id => l_adr_transaction_coa_id
3996: , p_accounting_coa_id => l_adr_accounting_coa_id
4024: xla_accounting_err_pkg.build_message
4025: (p_appli_s_name => 'XLA'
4026: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
4027: ,p_token_1 => 'LINE_NUMBER'
4028: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
4029: ,p_token_2 => 'LINE_TYPE_NAME'
4030: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
4031: l_component_type
4032: ,l_component_code
4060: --
4061: --
4062: ------------------------------------------------------------------------------------------------
4063: -- 4219869 Business Flow
4064: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4065: -- Prior Entry. Currently, the following code is always generated.
4066: ------------------------------------------------------------------------------------------------
4067: XLA_AE_LINES_PKG.ValidateCurrentLine;
4068:
4063: -- 4219869 Business Flow
4064: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4065: -- Prior Entry. Currently, the following code is always generated.
4066: ------------------------------------------------------------------------------------------------
4067: XLA_AE_LINES_PKG.ValidateCurrentLine;
4068:
4069: ------------------------------------------------------------------------------------
4070: -- 4219869 Business Flow
4071: -- Populated credit and debit amounts -- Need to generate this within IF
4069: ------------------------------------------------------------------------------------
4070: -- 4219869 Business Flow
4071: -- Populated credit and debit amounts -- Need to generate this within IF
4072: ------------------------------------------------------------------------------------
4073: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4074:
4075: ----------------------------------------------------------------------------------
4076: -- 4219869 Business Flow
4077: -- Update journal entry status -- Need to generate this within IF
4101: -- To allow MPA report to determine if it should generate report process
4102: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4103: ------------------------------------------------------------------------------------------
4104:
4105: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4106: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4107: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4108: -- call ADRs
4109: -- Bug 4922099
4102: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4103: ------------------------------------------------------------------------------------------
4104:
4105: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4106: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4107: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4108: -- call ADRs
4109: -- Bug 4922099
4110: --
4126: , x_value_type_code => l_adr_value_type_code
4127: , p_side => 'NA'
4128: );
4129:
4130: xla_ae_lines_pkg.set_ccid(
4131: p_code_combination_id => l_ccid
4132: , p_value_type_code => l_adr_value_type_code
4133: , p_transaction_coa_id => l_adr_transaction_coa_id
4134: , p_accounting_coa_id => l_adr_accounting_coa_id
4149:
4150: --
4151: -- Update the line information that should be overwritten
4152: --
4153: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4154: p_header_num => 1);
4155: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4156:
4157: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4151: -- Update the line information that should be overwritten
4152: --
4153: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4154: p_header_num => 1);
4155: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4156:
4157: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4158:
4159: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4153: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4154: p_header_num => 1);
4155: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4156:
4157: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4158:
4159: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4160: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4161: END IF;
4156:
4157: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4158:
4159: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4160: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4161: END IF;
4162:
4163: --
4164: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4163: --
4164: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4165: --
4166: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
4167: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
4168: ELSE
4169: ---------------------------------------------------------------------------------------------------
4170: -- 4262811a Switch Sign
4171: ---------------------------------------------------------------------------------------------------
4168: ELSE
4169: ---------------------------------------------------------------------------------------------------
4170: -- 4262811a Switch Sign
4171: ---------------------------------------------------------------------------------------------------
4172: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4173: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4175: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4169: ---------------------------------------------------------------------------------------------------
4170: -- 4262811a Switch Sign
4171: ---------------------------------------------------------------------------------------------------
4172: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4173: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4175: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4177: -- 5132302
4170: -- 4262811a Switch Sign
4171: ---------------------------------------------------------------------------------------------------
4172: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4173: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4175: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4177: -- 5132302
4178: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4171: ---------------------------------------------------------------------------------------------------
4172: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4173: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4175: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4177: -- 5132302
4178: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4179: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4172: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4173: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4175: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4177: -- 5132302
4178: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4179: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4180:
4174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4175: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4177: -- 5132302
4178: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4179: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4180:
4181: END IF;
4182:
4175: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4177: -- 5132302
4178: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4179: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4180:
4181: END IF;
4182:
4183: -- 4955764
4180:
4181: END IF;
4182:
4183: -- 4955764
4184: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4185: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4186:
4187:
4188: XLA_AE_LINES_PKG.ValidateCurrentLine;
4184: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4185: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4186:
4187:
4188: XLA_AE_LINES_PKG.ValidateCurrentLine;
4189: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4190:
4191: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4192: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4185: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4186:
4187:
4188: XLA_AE_LINES_PKG.ValidateCurrentLine;
4189: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4190:
4191: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4192: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4193: ,p_balance_type_code => l_balance_type_code);
4324: --
4325: -- bulk performance
4326: --
4327: l_balance_type_code VARCHAR2(1);
4328: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
4329: l_log_module VARCHAR2(240);
4330:
4331: --
4332: -- Upgrade strategy
4392: ') = 'TAX'
4393: THEN
4394:
4395: --
4396: XLA_AE_LINES_PKG.SetNewLine;
4397:
4398: p_balance_type_code := l_balance_type_code;
4399: -- set the flag so later we will know whether the gain loss line needs to be created
4400:
4404:
4405: --
4406: -- bulk performance
4407: --
4408: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
4409: p_header_num => 0); -- 4262811
4410: --
4411: -- set accounting line options
4412: --
4409: p_header_num => 0); -- 4262811
4410: --
4411: -- set accounting line options
4412: --
4413: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
4414: p_natural_side_code => 'C'
4415: , p_gain_or_loss_flag => 'N'
4416: , p_gl_transfer_mode_code => 'S'
4417: , p_acct_entry_type_code => 'A'
4423: --
4424: --
4425: -- set accounting line type info
4426: --
4427: xla_ae_lines_pkg.SetAcctLineType
4428: (p_component_type => l_component_type
4429: ,p_event_type_code => l_event_type_code
4430: ,p_line_definition_owner_code => l_line_definition_owner_code
4431: ,p_line_definition_code => l_line_definition_code
4437: ,p_event_class_code => l_event_class_code);
4438: --
4439: -- set accounting class
4440: --
4441: xla_ae_lines_pkg.SetAcctClass(
4442: p_accounting_class_code => 'TAX'
4443: , p_ae_header_id => l_ae_header_id
4444: );
4445:
4445:
4446: --
4447: -- set rounding class
4448: --
4449: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4450: 'RECEIVABLE';
4451:
4452: --
4453: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4449: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4450: 'RECEIVABLE';
4451:
4452: --
4453: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4454: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4455: --
4456: -- bulk performance
4457: --
4450: 'RECEIVABLE';
4451:
4452: --
4453: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4454: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4455: --
4456: -- bulk performance
4457: --
4458: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4454: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4455: --
4456: -- bulk performance
4457: --
4458: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4459:
4460: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4461: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4462:
4456: -- bulk performance
4457: --
4458: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4459:
4460: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4461: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4462:
4463: -- 4955764
4464: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4460: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4461: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
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('header_index'));
4466:
4467: -- 4458381 Public Sector Enh
4468:
4494: l_rec_acct_attrs.array_num_value(10) := p_source_24;
4495: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4496: l_rec_acct_attrs.array_char_value(11) := p_source_25;
4497:
4498: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4499: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4500:
4501: ---------------------------------------------------------------------------------------------------------------
4502: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4495: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4496: l_rec_acct_attrs.array_char_value(11) := p_source_25;
4497:
4498: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4499: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4500:
4501: ---------------------------------------------------------------------------------------------------------------
4502: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4503: ---------------------------------------------------------------------------------------------------------------
4498: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4499: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4500:
4501: ---------------------------------------------------------------------------------------------------------------
4502: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4503: ---------------------------------------------------------------------------------------------------------------
4504: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4505:
4506: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4500:
4501: ---------------------------------------------------------------------------------------------------------------
4502: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4503: ---------------------------------------------------------------------------------------------------------------
4504: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4505:
4506: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4507: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4508:
4502: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4503: ---------------------------------------------------------------------------------------------------------------
4504: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4505:
4506: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4507: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4508:
4509: IF xla_accounting_cache_pkg.GetValueChar
4510: (p_source_code => 'LEDGER_CATEGORY_CODE'
4503: ---------------------------------------------------------------------------------------------------------------
4504: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4505:
4506: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4507: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4508:
4509: IF xla_accounting_cache_pkg.GetValueChar
4510: (p_source_code => 'LEDGER_CATEGORY_CODE'
4511: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
4514: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
4515: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
4516: )
4517: THEN
4518: xla_ae_lines_pkg.BflowUpgEntry
4519: (p_business_method_code => l_bflow_method_code
4520: ,p_business_class_code => l_bflow_class_code
4521: ,p_balance_type => l_balance_type_code);
4522: ELSE
4554: , x_value_type_code => l_adr_value_type_code
4555: , p_side => 'NA'
4556: );
4557:
4558: xla_ae_lines_pkg.set_ccid(
4559: p_code_combination_id => l_ccid
4560: , p_value_type_code => l_adr_value_type_code
4561: , p_transaction_coa_id => l_adr_transaction_coa_id
4562: , p_accounting_coa_id => l_adr_accounting_coa_id
4590: xla_accounting_err_pkg.build_message
4591: (p_appli_s_name => 'XLA'
4592: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
4593: ,p_token_1 => 'LINE_NUMBER'
4594: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
4595: ,p_token_2 => 'LINE_TYPE_NAME'
4596: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
4597: l_component_type
4598: ,l_component_code
4626: --
4627: --
4628: ------------------------------------------------------------------------------------------------
4629: -- 4219869 Business Flow
4630: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4631: -- Prior Entry. Currently, the following code is always generated.
4632: ------------------------------------------------------------------------------------------------
4633: XLA_AE_LINES_PKG.ValidateCurrentLine;
4634:
4629: -- 4219869 Business Flow
4630: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4631: -- Prior Entry. Currently, the following code is always generated.
4632: ------------------------------------------------------------------------------------------------
4633: XLA_AE_LINES_PKG.ValidateCurrentLine;
4634:
4635: ------------------------------------------------------------------------------------
4636: -- 4219869 Business Flow
4637: -- Populated credit and debit amounts -- Need to generate this within IF
4635: ------------------------------------------------------------------------------------
4636: -- 4219869 Business Flow
4637: -- Populated credit and debit amounts -- Need to generate this within IF
4638: ------------------------------------------------------------------------------------
4639: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4640:
4641: ----------------------------------------------------------------------------------
4642: -- 4219869 Business Flow
4643: -- Update journal entry status -- Need to generate this within IF
4667: -- To allow MPA report to determine if it should generate report process
4668: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4669: ------------------------------------------------------------------------------------------
4670:
4671: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4672: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4673: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4674: -- call ADRs
4675: -- Bug 4922099
4668: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4669: ------------------------------------------------------------------------------------------
4670:
4671: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4672: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4673: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4674: -- call ADRs
4675: -- Bug 4922099
4676: --
4692: , x_value_type_code => l_adr_value_type_code
4693: , p_side => 'NA'
4694: );
4695:
4696: xla_ae_lines_pkg.set_ccid(
4697: p_code_combination_id => l_ccid
4698: , p_value_type_code => l_adr_value_type_code
4699: , p_transaction_coa_id => l_adr_transaction_coa_id
4700: , p_accounting_coa_id => l_adr_accounting_coa_id
4715:
4716: --
4717: -- Update the line information that should be overwritten
4718: --
4719: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4720: p_header_num => 1);
4721: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4722:
4723: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4717: -- Update the line information that should be overwritten
4718: --
4719: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4720: p_header_num => 1);
4721: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4722:
4723: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4724:
4725: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4719: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4720: p_header_num => 1);
4721: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4722:
4723: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4724:
4725: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4726: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4727: END IF;
4722:
4723: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4724:
4725: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4726: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4727: END IF;
4728:
4729: --
4730: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4729: --
4730: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4731: --
4732: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
4733: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
4734: ELSE
4735: ---------------------------------------------------------------------------------------------------
4736: -- 4262811a Switch Sign
4737: ---------------------------------------------------------------------------------------------------
4734: ELSE
4735: ---------------------------------------------------------------------------------------------------
4736: -- 4262811a Switch Sign
4737: ---------------------------------------------------------------------------------------------------
4738: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4739: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4740: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4741: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4742: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4735: ---------------------------------------------------------------------------------------------------
4736: -- 4262811a Switch Sign
4737: ---------------------------------------------------------------------------------------------------
4738: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4739: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4740: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4741: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4742: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4743: -- 5132302
4736: -- 4262811a Switch Sign
4737: ---------------------------------------------------------------------------------------------------
4738: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4739: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4740: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4741: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4742: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4743: -- 5132302
4744: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4737: ---------------------------------------------------------------------------------------------------
4738: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4739: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4740: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4741: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4742: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4743: -- 5132302
4744: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4745: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4738: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4739: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4740: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4741: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4742: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4743: -- 5132302
4744: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4745: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4746:
4740: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4741: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4742: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4743: -- 5132302
4744: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4745: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4746:
4747: END IF;
4748:
4741: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4742: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4743: -- 5132302
4744: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4745: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4746:
4747: END IF;
4748:
4749: -- 4955764
4746:
4747: END IF;
4748:
4749: -- 4955764
4750: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4751: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4752:
4753:
4754: XLA_AE_LINES_PKG.ValidateCurrentLine;
4750: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4751: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4752:
4753:
4754: XLA_AE_LINES_PKG.ValidateCurrentLine;
4755: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4756:
4757: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4758: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4751: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4752:
4753:
4754: XLA_AE_LINES_PKG.ValidateCurrentLine;
4755: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4756:
4757: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4758: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4759: ,p_balance_type_code => l_balance_type_code);
4890: --
4891: -- bulk performance
4892: --
4893: l_balance_type_code VARCHAR2(1);
4894: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
4895: l_log_module VARCHAR2(240);
4896:
4897: --
4898: -- Upgrade strategy
4958: ') = 'REC'
4959: THEN
4960:
4961: --
4962: XLA_AE_LINES_PKG.SetNewLine;
4963:
4964: p_balance_type_code := l_balance_type_code;
4965: -- set the flag so later we will know whether the gain loss line needs to be created
4966:
4970:
4971: --
4972: -- bulk performance
4973: --
4974: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
4975: p_header_num => 0); -- 4262811
4976: --
4977: -- set accounting line options
4978: --
4975: p_header_num => 0); -- 4262811
4976: --
4977: -- set accounting line options
4978: --
4979: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
4980: p_natural_side_code => 'D'
4981: , p_gain_or_loss_flag => 'N'
4982: , p_gl_transfer_mode_code => 'S'
4983: , p_acct_entry_type_code => 'A'
4989: --
4990: --
4991: -- set accounting line type info
4992: --
4993: xla_ae_lines_pkg.SetAcctLineType
4994: (p_component_type => l_component_type
4995: ,p_event_type_code => l_event_type_code
4996: ,p_line_definition_owner_code => l_line_definition_owner_code
4997: ,p_line_definition_code => l_line_definition_code
5003: ,p_event_class_code => l_event_class_code);
5004: --
5005: -- set accounting class
5006: --
5007: xla_ae_lines_pkg.SetAcctClass(
5008: p_accounting_class_code => 'RECEIVABLE'
5009: , p_ae_header_id => l_ae_header_id
5010: );
5011:
5011:
5012: --
5013: -- set rounding class
5014: --
5015: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5016: 'RECEIVABLE';
5017:
5018: --
5019: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5015: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5016: 'RECEIVABLE';
5017:
5018: --
5019: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5020: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5021: --
5022: -- bulk performance
5023: --
5016: 'RECEIVABLE';
5017:
5018: --
5019: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5020: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5021: --
5022: -- bulk performance
5023: --
5024: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5020: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5021: --
5022: -- bulk performance
5023: --
5024: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5025:
5026: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5027: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5028:
5022: -- bulk performance
5023: --
5024: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5025:
5026: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5027: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5028:
5029: -- 4955764
5030: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5026: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5027: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
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('header_index'));
5032:
5033: -- 4458381 Public Sector Enh
5034:
5060: l_rec_acct_attrs.array_num_value(10) := p_source_24;
5061: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5062: l_rec_acct_attrs.array_char_value(11) := p_source_25;
5063:
5064: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5065: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5066:
5067: ---------------------------------------------------------------------------------------------------------------
5068: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5061: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5062: l_rec_acct_attrs.array_char_value(11) := p_source_25;
5063:
5064: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5065: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5066:
5067: ---------------------------------------------------------------------------------------------------------------
5068: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5069: ---------------------------------------------------------------------------------------------------------------
5064: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5065: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5066:
5067: ---------------------------------------------------------------------------------------------------------------
5068: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5069: ---------------------------------------------------------------------------------------------------------------
5070: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5071:
5072: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5066:
5067: ---------------------------------------------------------------------------------------------------------------
5068: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5069: ---------------------------------------------------------------------------------------------------------------
5070: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5071:
5072: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5073: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5074:
5068: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5069: ---------------------------------------------------------------------------------------------------------------
5070: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5071:
5072: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5073: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5074:
5075: IF xla_accounting_cache_pkg.GetValueChar
5076: (p_source_code => 'LEDGER_CATEGORY_CODE'
5069: ---------------------------------------------------------------------------------------------------------------
5070: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5071:
5072: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5073: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5074:
5075: IF xla_accounting_cache_pkg.GetValueChar
5076: (p_source_code => 'LEDGER_CATEGORY_CODE'
5077: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
5080: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
5081: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
5082: )
5083: THEN
5084: xla_ae_lines_pkg.BflowUpgEntry
5085: (p_business_method_code => l_bflow_method_code
5086: ,p_business_class_code => l_bflow_class_code
5087: ,p_balance_type => l_balance_type_code);
5088: ELSE
5120: , x_value_type_code => l_adr_value_type_code
5121: , p_side => 'NA'
5122: );
5123:
5124: xla_ae_lines_pkg.set_ccid(
5125: p_code_combination_id => l_ccid
5126: , p_value_type_code => l_adr_value_type_code
5127: , p_transaction_coa_id => l_adr_transaction_coa_id
5128: , p_accounting_coa_id => l_adr_accounting_coa_id
5156: xla_accounting_err_pkg.build_message
5157: (p_appli_s_name => 'XLA'
5158: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
5159: ,p_token_1 => 'LINE_NUMBER'
5160: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
5161: ,p_token_2 => 'LINE_TYPE_NAME'
5162: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
5163: l_component_type
5164: ,l_component_code
5192: --
5193: --
5194: ------------------------------------------------------------------------------------------------
5195: -- 4219869 Business Flow
5196: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5197: -- Prior Entry. Currently, the following code is always generated.
5198: ------------------------------------------------------------------------------------------------
5199: XLA_AE_LINES_PKG.ValidateCurrentLine;
5200:
5195: -- 4219869 Business Flow
5196: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5197: -- Prior Entry. Currently, the following code is always generated.
5198: ------------------------------------------------------------------------------------------------
5199: XLA_AE_LINES_PKG.ValidateCurrentLine;
5200:
5201: ------------------------------------------------------------------------------------
5202: -- 4219869 Business Flow
5203: -- Populated credit and debit amounts -- Need to generate this within IF
5201: ------------------------------------------------------------------------------------
5202: -- 4219869 Business Flow
5203: -- Populated credit and debit amounts -- Need to generate this within IF
5204: ------------------------------------------------------------------------------------
5205: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5206:
5207: ----------------------------------------------------------------------------------
5208: -- 4219869 Business Flow
5209: -- Update journal entry status -- Need to generate this within IF
5233: -- To allow MPA report to determine if it should generate report process
5234: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5235: ------------------------------------------------------------------------------------------
5236:
5237: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5238: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5239: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5240: -- call ADRs
5241: -- Bug 4922099
5234: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5235: ------------------------------------------------------------------------------------------
5236:
5237: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5238: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5239: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5240: -- call ADRs
5241: -- Bug 4922099
5242: --
5258: , x_value_type_code => l_adr_value_type_code
5259: , p_side => 'NA'
5260: );
5261:
5262: xla_ae_lines_pkg.set_ccid(
5263: p_code_combination_id => l_ccid
5264: , p_value_type_code => l_adr_value_type_code
5265: , p_transaction_coa_id => l_adr_transaction_coa_id
5266: , p_accounting_coa_id => l_adr_accounting_coa_id
5281:
5282: --
5283: -- Update the line information that should be overwritten
5284: --
5285: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5286: p_header_num => 1);
5287: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5288:
5289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5283: -- Update the line information that should be overwritten
5284: --
5285: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5286: p_header_num => 1);
5287: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5288:
5289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5290:
5291: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5285: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5286: p_header_num => 1);
5287: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5288:
5289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5290:
5291: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5292: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5293: END IF;
5288:
5289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5290:
5291: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5292: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5293: END IF;
5294:
5295: --
5296: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5295: --
5296: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5297: --
5298: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
5299: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
5300: ELSE
5301: ---------------------------------------------------------------------------------------------------
5302: -- 4262811a Switch Sign
5303: ---------------------------------------------------------------------------------------------------
5300: ELSE
5301: ---------------------------------------------------------------------------------------------------
5302: -- 4262811a Switch Sign
5303: ---------------------------------------------------------------------------------------------------
5304: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5305: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5306: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5307: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5308: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5301: ---------------------------------------------------------------------------------------------------
5302: -- 4262811a Switch Sign
5303: ---------------------------------------------------------------------------------------------------
5304: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5305: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5306: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5307: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5308: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5309: -- 5132302
5302: -- 4262811a Switch Sign
5303: ---------------------------------------------------------------------------------------------------
5304: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5305: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5306: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5307: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5308: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5309: -- 5132302
5310: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5303: ---------------------------------------------------------------------------------------------------
5304: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5305: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5306: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5307: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5308: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5309: -- 5132302
5310: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5311: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5304: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5305: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5306: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5307: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5308: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5309: -- 5132302
5310: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5311: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5312:
5306: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5307: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5308: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5309: -- 5132302
5310: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5311: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5312:
5313: END IF;
5314:
5307: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5308: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5309: -- 5132302
5310: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5311: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5312:
5313: END IF;
5314:
5315: -- 4955764
5312:
5313: END IF;
5314:
5315: -- 4955764
5316: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5317: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5318:
5319:
5320: XLA_AE_LINES_PKG.ValidateCurrentLine;
5316: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5317: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5318:
5319:
5320: XLA_AE_LINES_PKG.ValidateCurrentLine;
5321: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5322:
5323: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5324: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5317: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5318:
5319:
5320: XLA_AE_LINES_PKG.ValidateCurrentLine;
5321: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5322:
5323: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5324: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5325: ,p_balance_type_code => l_balance_type_code);
5456: --
5457: -- bulk performance
5458: --
5459: l_balance_type_code VARCHAR2(1);
5460: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
5461: l_log_module VARCHAR2(240);
5462:
5463: --
5464: -- Upgrade strategy
5524: ') = 'REV'
5525: THEN
5526:
5527: --
5528: XLA_AE_LINES_PKG.SetNewLine;
5529:
5530: p_balance_type_code := l_balance_type_code;
5531: -- set the flag so later we will know whether the gain loss line needs to be created
5532:
5536:
5537: --
5538: -- bulk performance
5539: --
5540: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
5541: p_header_num => 0); -- 4262811
5542: --
5543: -- set accounting line options
5544: --
5541: p_header_num => 0); -- 4262811
5542: --
5543: -- set accounting line options
5544: --
5545: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
5546: p_natural_side_code => 'C'
5547: , p_gain_or_loss_flag => 'N'
5548: , p_gl_transfer_mode_code => 'S'
5549: , p_acct_entry_type_code => 'A'
5555: --
5556: --
5557: -- set accounting line type info
5558: --
5559: xla_ae_lines_pkg.SetAcctLineType
5560: (p_component_type => l_component_type
5561: ,p_event_type_code => l_event_type_code
5562: ,p_line_definition_owner_code => l_line_definition_owner_code
5563: ,p_line_definition_code => l_line_definition_code
5569: ,p_event_class_code => l_event_class_code);
5570: --
5571: -- set accounting class
5572: --
5573: xla_ae_lines_pkg.SetAcctClass(
5574: p_accounting_class_code => 'REVENUE'
5575: , p_ae_header_id => l_ae_header_id
5576: );
5577:
5577:
5578: --
5579: -- set rounding class
5580: --
5581: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5582: 'RECEIVABLE';
5583:
5584: --
5585: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5581: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5582: 'RECEIVABLE';
5583:
5584: --
5585: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5586: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5587: --
5588: -- bulk performance
5589: --
5582: 'RECEIVABLE';
5583:
5584: --
5585: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5586: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5587: --
5588: -- bulk performance
5589: --
5590: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5586: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5587: --
5588: -- bulk performance
5589: --
5590: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5591:
5592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5593: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5594:
5588: -- bulk performance
5589: --
5590: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5591:
5592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5593: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5594:
5595: -- 4955764
5596: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5593: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
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('header_index'));
5598:
5599: -- 4458381 Public Sector Enh
5600:
5626: l_rec_acct_attrs.array_num_value(10) := p_source_24;
5627: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5628: l_rec_acct_attrs.array_char_value(11) := p_source_25;
5629:
5630: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5631: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5632:
5633: ---------------------------------------------------------------------------------------------------------------
5634: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5627: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5628: l_rec_acct_attrs.array_char_value(11) := p_source_25;
5629:
5630: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5631: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5632:
5633: ---------------------------------------------------------------------------------------------------------------
5634: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5635: ---------------------------------------------------------------------------------------------------------------
5630: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5631: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5632:
5633: ---------------------------------------------------------------------------------------------------------------
5634: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5635: ---------------------------------------------------------------------------------------------------------------
5636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5637:
5638: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5632:
5633: ---------------------------------------------------------------------------------------------------------------
5634: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5635: ---------------------------------------------------------------------------------------------------------------
5636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5637:
5638: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5639: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5640:
5634: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5635: ---------------------------------------------------------------------------------------------------------------
5636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5637:
5638: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5639: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5640:
5641: IF xla_accounting_cache_pkg.GetValueChar
5642: (p_source_code => 'LEDGER_CATEGORY_CODE'
5635: ---------------------------------------------------------------------------------------------------------------
5636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5637:
5638: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5639: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5640:
5641: IF xla_accounting_cache_pkg.GetValueChar
5642: (p_source_code => 'LEDGER_CATEGORY_CODE'
5643: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
5646: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
5647: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
5648: )
5649: THEN
5650: xla_ae_lines_pkg.BflowUpgEntry
5651: (p_business_method_code => l_bflow_method_code
5652: ,p_business_class_code => l_bflow_class_code
5653: ,p_balance_type => l_balance_type_code);
5654: ELSE
5686: , x_value_type_code => l_adr_value_type_code
5687: , p_side => 'NA'
5688: );
5689:
5690: xla_ae_lines_pkg.set_ccid(
5691: p_code_combination_id => l_ccid
5692: , p_value_type_code => l_adr_value_type_code
5693: , p_transaction_coa_id => l_adr_transaction_coa_id
5694: , p_accounting_coa_id => l_adr_accounting_coa_id
5722: xla_accounting_err_pkg.build_message
5723: (p_appli_s_name => 'XLA'
5724: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
5725: ,p_token_1 => 'LINE_NUMBER'
5726: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
5727: ,p_token_2 => 'LINE_TYPE_NAME'
5728: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
5729: l_component_type
5730: ,l_component_code
5758: --
5759: --
5760: ------------------------------------------------------------------------------------------------
5761: -- 4219869 Business Flow
5762: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5763: -- Prior Entry. Currently, the following code is always generated.
5764: ------------------------------------------------------------------------------------------------
5765: XLA_AE_LINES_PKG.ValidateCurrentLine;
5766:
5761: -- 4219869 Business Flow
5762: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5763: -- Prior Entry. Currently, the following code is always generated.
5764: ------------------------------------------------------------------------------------------------
5765: XLA_AE_LINES_PKG.ValidateCurrentLine;
5766:
5767: ------------------------------------------------------------------------------------
5768: -- 4219869 Business Flow
5769: -- Populated credit and debit amounts -- Need to generate this within IF
5767: ------------------------------------------------------------------------------------
5768: -- 4219869 Business Flow
5769: -- Populated credit and debit amounts -- Need to generate this within IF
5770: ------------------------------------------------------------------------------------
5771: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5772:
5773: ----------------------------------------------------------------------------------
5774: -- 4219869 Business Flow
5775: -- Update journal entry status -- Need to generate this within IF
5799: -- To allow MPA report to determine if it should generate report process
5800: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5801: ------------------------------------------------------------------------------------------
5802:
5803: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5804: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5805: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5806: -- call ADRs
5807: -- Bug 4922099
5800: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5801: ------------------------------------------------------------------------------------------
5802:
5803: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5804: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5805: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5806: -- call ADRs
5807: -- Bug 4922099
5808: --
5824: , x_value_type_code => l_adr_value_type_code
5825: , p_side => 'NA'
5826: );
5827:
5828: xla_ae_lines_pkg.set_ccid(
5829: p_code_combination_id => l_ccid
5830: , p_value_type_code => l_adr_value_type_code
5831: , p_transaction_coa_id => l_adr_transaction_coa_id
5832: , p_accounting_coa_id => l_adr_accounting_coa_id
5847:
5848: --
5849: -- Update the line information that should be overwritten
5850: --
5851: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5852: p_header_num => 1);
5853: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5854:
5855: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5849: -- Update the line information that should be overwritten
5850: --
5851: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5852: p_header_num => 1);
5853: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5854:
5855: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5856:
5857: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5851: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5852: p_header_num => 1);
5853: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5854:
5855: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5856:
5857: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5858: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5859: END IF;
5854:
5855: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5856:
5857: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5858: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5859: END IF;
5860:
5861: --
5862: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5861: --
5862: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5863: --
5864: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
5865: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
5866: ELSE
5867: ---------------------------------------------------------------------------------------------------
5868: -- 4262811a Switch Sign
5869: ---------------------------------------------------------------------------------------------------
5866: ELSE
5867: ---------------------------------------------------------------------------------------------------
5868: -- 4262811a Switch Sign
5869: ---------------------------------------------------------------------------------------------------
5870: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5871: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5873: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5867: ---------------------------------------------------------------------------------------------------
5868: -- 4262811a Switch Sign
5869: ---------------------------------------------------------------------------------------------------
5870: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5871: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5873: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5875: -- 5132302
5868: -- 4262811a Switch Sign
5869: ---------------------------------------------------------------------------------------------------
5870: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5871: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5873: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5875: -- 5132302
5876: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5869: ---------------------------------------------------------------------------------------------------
5870: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5871: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5873: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5875: -- 5132302
5876: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5877: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5870: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5871: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5873: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5875: -- 5132302
5876: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5877: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5878:
5872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5873: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5875: -- 5132302
5876: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5877: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5878:
5879: END IF;
5880:
5873: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5875: -- 5132302
5876: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5877: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5878:
5879: END IF;
5880:
5881: -- 4955764
5878:
5879: END IF;
5880:
5881: -- 4955764
5882: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5883: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5884:
5885:
5886: XLA_AE_LINES_PKG.ValidateCurrentLine;
5882: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5883: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5884:
5885:
5886: XLA_AE_LINES_PKG.ValidateCurrentLine;
5887: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5888:
5889: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5890: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5883: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5884:
5885:
5886: XLA_AE_LINES_PKG.ValidateCurrentLine;
5887: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5888:
5889: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5890: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5891: ,p_balance_type_code => l_balance_type_code);
6026: --
6027: -- bulk performance
6028: --
6029: l_balance_type_code VARCHAR2(1);
6030: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
6031: l_log_module VARCHAR2(240);
6032:
6033: --
6034: -- Upgrade strategy
6094: ') = 'REC'
6095: THEN
6096:
6097: --
6098: XLA_AE_LINES_PKG.SetNewLine;
6099:
6100: p_balance_type_code := l_balance_type_code;
6101: -- set the flag so later we will know whether the gain loss line needs to be created
6102:
6106:
6107: --
6108: -- bulk performance
6109: --
6110: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
6111: p_header_num => 0); -- 4262811
6112: --
6113: -- set accounting line options
6114: --
6111: p_header_num => 0); -- 4262811
6112: --
6113: -- set accounting line options
6114: --
6115: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
6116: p_natural_side_code => 'C'
6117: , p_gain_or_loss_flag => 'N'
6118: , p_gl_transfer_mode_code => 'S'
6119: , p_acct_entry_type_code => 'A'
6125: --
6126: --
6127: -- set accounting line type info
6128: --
6129: xla_ae_lines_pkg.SetAcctLineType
6130: (p_component_type => l_component_type
6131: ,p_event_type_code => l_event_type_code
6132: ,p_line_definition_owner_code => l_line_definition_owner_code
6133: ,p_line_definition_code => l_line_definition_code
6139: ,p_event_class_code => l_event_class_code);
6140: --
6141: -- set accounting class
6142: --
6143: xla_ae_lines_pkg.SetAcctClass(
6144: p_accounting_class_code => 'RECEIVABLE'
6145: , p_ae_header_id => l_ae_header_id
6146: );
6147:
6147:
6148: --
6149: -- set rounding class
6150: --
6151: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6152: 'RECEIVABLE';
6153:
6154: --
6155: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6151: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6152: 'RECEIVABLE';
6153:
6154: --
6155: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6156: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6157: --
6158: -- bulk performance
6159: --
6152: 'RECEIVABLE';
6153:
6154: --
6155: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6156: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6157: --
6158: -- bulk performance
6159: --
6160: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6156: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6157: --
6158: -- bulk performance
6159: --
6160: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6161:
6162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6163: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6164:
6158: -- bulk performance
6159: --
6160: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6161:
6162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6163: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6164:
6165: -- 4955764
6166: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6163: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6164:
6165: -- 4955764
6166: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6167: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
6168:
6169: -- 4458381 Public Sector Enh
6170:
6200: l_rec_acct_attrs.array_char_value(12) := p_source_25;
6201: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
6202: l_rec_acct_attrs.array_num_value(13) := p_source_45;
6203:
6204: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6205: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6206:
6207: ---------------------------------------------------------------------------------------------------------------
6208: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6201: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
6202: l_rec_acct_attrs.array_num_value(13) := p_source_45;
6203:
6204: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6205: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6206:
6207: ---------------------------------------------------------------------------------------------------------------
6208: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6209: ---------------------------------------------------------------------------------------------------------------
6204: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6205: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6206:
6207: ---------------------------------------------------------------------------------------------------------------
6208: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6209: ---------------------------------------------------------------------------------------------------------------
6210: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6211:
6212: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6206:
6207: ---------------------------------------------------------------------------------------------------------------
6208: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6209: ---------------------------------------------------------------------------------------------------------------
6210: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6211:
6212: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6213: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6214:
6208: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6209: ---------------------------------------------------------------------------------------------------------------
6210: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6211:
6212: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6213: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6214:
6215: IF xla_accounting_cache_pkg.GetValueChar
6216: (p_source_code => 'LEDGER_CATEGORY_CODE'
6209: ---------------------------------------------------------------------------------------------------------------
6210: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6211:
6212: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6213: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6214:
6215: IF xla_accounting_cache_pkg.GetValueChar
6216: (p_source_code => 'LEDGER_CATEGORY_CODE'
6217: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
6220: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
6221: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
6222: )
6223: THEN
6224: xla_ae_lines_pkg.BflowUpgEntry
6225: (p_business_method_code => l_bflow_method_code
6226: ,p_business_class_code => l_bflow_class_code
6227: ,p_balance_type => l_balance_type_code);
6228: ELSE
6260: , x_value_type_code => l_adr_value_type_code
6261: , p_side => 'NA'
6262: );
6263:
6264: xla_ae_lines_pkg.set_ccid(
6265: p_code_combination_id => l_ccid
6266: , p_value_type_code => l_adr_value_type_code
6267: , p_transaction_coa_id => l_adr_transaction_coa_id
6268: , p_accounting_coa_id => l_adr_accounting_coa_id
6296: xla_accounting_err_pkg.build_message
6297: (p_appli_s_name => 'XLA'
6298: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
6299: ,p_token_1 => 'LINE_NUMBER'
6300: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
6301: ,p_token_2 => 'LINE_TYPE_NAME'
6302: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
6303: l_component_type
6304: ,l_component_code
6332: --
6333: --
6334: ------------------------------------------------------------------------------------------------
6335: -- 4219869 Business Flow
6336: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6337: -- Prior Entry. Currently, the following code is always generated.
6338: ------------------------------------------------------------------------------------------------
6339: XLA_AE_LINES_PKG.ValidateCurrentLine;
6340:
6335: -- 4219869 Business Flow
6336: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6337: -- Prior Entry. Currently, the following code is always generated.
6338: ------------------------------------------------------------------------------------------------
6339: XLA_AE_LINES_PKG.ValidateCurrentLine;
6340:
6341: ------------------------------------------------------------------------------------
6342: -- 4219869 Business Flow
6343: -- Populated credit and debit amounts -- Need to generate this within IF
6341: ------------------------------------------------------------------------------------
6342: -- 4219869 Business Flow
6343: -- Populated credit and debit amounts -- Need to generate this within IF
6344: ------------------------------------------------------------------------------------
6345: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6346:
6347: ----------------------------------------------------------------------------------
6348: -- 4219869 Business Flow
6349: -- Update journal entry status -- Need to generate this within IF
6373: -- To allow MPA report to determine if it should generate report process
6374: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6375: ------------------------------------------------------------------------------------------
6376:
6377: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6378: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6379: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6380: -- call ADRs
6381: -- Bug 4922099
6374: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6375: ------------------------------------------------------------------------------------------
6376:
6377: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6378: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6379: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6380: -- call ADRs
6381: -- Bug 4922099
6382: --
6398: , x_value_type_code => l_adr_value_type_code
6399: , p_side => 'NA'
6400: );
6401:
6402: xla_ae_lines_pkg.set_ccid(
6403: p_code_combination_id => l_ccid
6404: , p_value_type_code => l_adr_value_type_code
6405: , p_transaction_coa_id => l_adr_transaction_coa_id
6406: , p_accounting_coa_id => l_adr_accounting_coa_id
6421:
6422: --
6423: -- Update the line information that should be overwritten
6424: --
6425: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6426: p_header_num => 1);
6427: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6428:
6429: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6423: -- Update the line information that should be overwritten
6424: --
6425: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6426: p_header_num => 1);
6427: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6428:
6429: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6430:
6431: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6425: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6426: p_header_num => 1);
6427: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6428:
6429: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6430:
6431: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6432: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6433: END IF;
6428:
6429: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6430:
6431: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6432: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6433: END IF;
6434:
6435: --
6436: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6435: --
6436: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6437: --
6438: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
6439: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
6440: ELSE
6441: ---------------------------------------------------------------------------------------------------
6442: -- 4262811a Switch Sign
6443: ---------------------------------------------------------------------------------------------------
6440: ELSE
6441: ---------------------------------------------------------------------------------------------------
6442: -- 4262811a Switch Sign
6443: ---------------------------------------------------------------------------------------------------
6444: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6445: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6446: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6447: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6448: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6441: ---------------------------------------------------------------------------------------------------
6442: -- 4262811a Switch Sign
6443: ---------------------------------------------------------------------------------------------------
6444: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6445: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6446: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6447: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6448: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6449: -- 5132302
6442: -- 4262811a Switch Sign
6443: ---------------------------------------------------------------------------------------------------
6444: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6445: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6446: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6447: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6448: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6449: -- 5132302
6450: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6443: ---------------------------------------------------------------------------------------------------
6444: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6445: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6446: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6447: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6448: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6449: -- 5132302
6450: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6451: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6444: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6445: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6446: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6447: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6448: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6449: -- 5132302
6450: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6451: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6452:
6446: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6447: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6448: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6449: -- 5132302
6450: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6451: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6452:
6453: END IF;
6454:
6447: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6448: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6449: -- 5132302
6450: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6451: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6452:
6453: END IF;
6454:
6455: -- 4955764
6452:
6453: END IF;
6454:
6455: -- 4955764
6456: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6457: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6458:
6459:
6460: XLA_AE_LINES_PKG.ValidateCurrentLine;
6456: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6457: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6458:
6459:
6460: XLA_AE_LINES_PKG.ValidateCurrentLine;
6461: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6462:
6463: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6464: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6457: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6458:
6459:
6460: XLA_AE_LINES_PKG.ValidateCurrentLine;
6461: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6462:
6463: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6464: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6465: ,p_balance_type_code => l_balance_type_code);
6602: --
6603: -- bulk performance
6604: --
6605: l_balance_type_code VARCHAR2(1);
6606: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
6607: l_log_module VARCHAR2(240);
6608:
6609: --
6610: -- Upgrade strategy
6676: ') = 'CM_REFUND')
6677: THEN
6678:
6679: --
6680: XLA_AE_LINES_PKG.SetNewLine;
6681:
6682: p_balance_type_code := l_balance_type_code;
6683: -- set the flag so later we will know whether the gain loss line needs to be created
6684:
6688:
6689: --
6690: -- bulk performance
6691: --
6692: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
6693: p_header_num => 0); -- 4262811
6694: --
6695: -- set accounting line options
6696: --
6693: p_header_num => 0); -- 4262811
6694: --
6695: -- set accounting line options
6696: --
6697: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
6698: p_natural_side_code => 'C'
6699: , p_gain_or_loss_flag => 'N'
6700: , p_gl_transfer_mode_code => 'S'
6701: , p_acct_entry_type_code => 'A'
6707: --
6708: --
6709: -- set accounting line type info
6710: --
6711: xla_ae_lines_pkg.SetAcctLineType
6712: (p_component_type => l_component_type
6713: ,p_event_type_code => l_event_type_code
6714: ,p_line_definition_owner_code => l_line_definition_owner_code
6715: ,p_line_definition_code => l_line_definition_code
6721: ,p_event_class_code => l_event_class_code);
6722: --
6723: -- set accounting class
6724: --
6725: xla_ae_lines_pkg.SetAcctClass(
6726: p_accounting_class_code => 'REFUND'
6727: , p_ae_header_id => l_ae_header_id
6728: );
6729:
6729:
6730: --
6731: -- set rounding class
6732: --
6733: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6734: 'REFUND';
6735:
6736: --
6737: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6733: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6734: 'REFUND';
6735:
6736: --
6737: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6738: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6739: --
6740: -- bulk performance
6741: --
6734: 'REFUND';
6735:
6736: --
6737: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6738: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6739: --
6740: -- bulk performance
6741: --
6742: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6738: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6739: --
6740: -- bulk performance
6741: --
6742: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6743:
6744: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6745: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6746:
6740: -- bulk performance
6741: --
6742: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6743:
6744: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6745: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6746:
6747: -- 4955764
6748: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6744: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6745: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6746:
6747: -- 4955764
6748: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6749: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
6750:
6751: -- 4458381 Public Sector Enh
6752:
6782: l_rec_acct_attrs.array_char_value(12) := p_source_25;
6783: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
6784: l_rec_acct_attrs.array_num_value(13) := p_source_45;
6785:
6786: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6787: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6788:
6789: ---------------------------------------------------------------------------------------------------------------
6790: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6783: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
6784: l_rec_acct_attrs.array_num_value(13) := p_source_45;
6785:
6786: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6787: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6788:
6789: ---------------------------------------------------------------------------------------------------------------
6790: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6791: ---------------------------------------------------------------------------------------------------------------
6786: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6787: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6788:
6789: ---------------------------------------------------------------------------------------------------------------
6790: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6791: ---------------------------------------------------------------------------------------------------------------
6792: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6793:
6794: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6788:
6789: ---------------------------------------------------------------------------------------------------------------
6790: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6791: ---------------------------------------------------------------------------------------------------------------
6792: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6793:
6794: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6795: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6796:
6790: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6791: ---------------------------------------------------------------------------------------------------------------
6792: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6793:
6794: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6795: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6796:
6797: IF xla_accounting_cache_pkg.GetValueChar
6798: (p_source_code => 'LEDGER_CATEGORY_CODE'
6791: ---------------------------------------------------------------------------------------------------------------
6792: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6793:
6794: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6795: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6796:
6797: IF xla_accounting_cache_pkg.GetValueChar
6798: (p_source_code => 'LEDGER_CATEGORY_CODE'
6799: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
6802: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
6803: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
6804: )
6805: THEN
6806: xla_ae_lines_pkg.BflowUpgEntry
6807: (p_business_method_code => l_bflow_method_code
6808: ,p_business_class_code => l_bflow_class_code
6809: ,p_balance_type => l_balance_type_code);
6810: ELSE
6842: , x_value_type_code => l_adr_value_type_code
6843: , p_side => 'NA'
6844: );
6845:
6846: xla_ae_lines_pkg.set_ccid(
6847: p_code_combination_id => l_ccid
6848: , p_value_type_code => l_adr_value_type_code
6849: , p_transaction_coa_id => l_adr_transaction_coa_id
6850: , p_accounting_coa_id => l_adr_accounting_coa_id
6878: xla_accounting_err_pkg.build_message
6879: (p_appli_s_name => 'XLA'
6880: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
6881: ,p_token_1 => 'LINE_NUMBER'
6882: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
6883: ,p_token_2 => 'LINE_TYPE_NAME'
6884: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
6885: l_component_type
6886: ,l_component_code
6914: --
6915: --
6916: ------------------------------------------------------------------------------------------------
6917: -- 4219869 Business Flow
6918: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6919: -- Prior Entry. Currently, the following code is always generated.
6920: ------------------------------------------------------------------------------------------------
6921: XLA_AE_LINES_PKG.ValidateCurrentLine;
6922:
6917: -- 4219869 Business Flow
6918: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6919: -- Prior Entry. Currently, the following code is always generated.
6920: ------------------------------------------------------------------------------------------------
6921: XLA_AE_LINES_PKG.ValidateCurrentLine;
6922:
6923: ------------------------------------------------------------------------------------
6924: -- 4219869 Business Flow
6925: -- Populated credit and debit amounts -- Need to generate this within IF
6923: ------------------------------------------------------------------------------------
6924: -- 4219869 Business Flow
6925: -- Populated credit and debit amounts -- Need to generate this within IF
6926: ------------------------------------------------------------------------------------
6927: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6928:
6929: ----------------------------------------------------------------------------------
6930: -- 4219869 Business Flow
6931: -- Update journal entry status -- Need to generate this within IF
6955: -- To allow MPA report to determine if it should generate report process
6956: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6957: ------------------------------------------------------------------------------------------
6958:
6959: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6960: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6961: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6962: -- call ADRs
6963: -- Bug 4922099
6956: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6957: ------------------------------------------------------------------------------------------
6958:
6959: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6960: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6961: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6962: -- call ADRs
6963: -- Bug 4922099
6964: --
6980: , x_value_type_code => l_adr_value_type_code
6981: , p_side => 'NA'
6982: );
6983:
6984: xla_ae_lines_pkg.set_ccid(
6985: p_code_combination_id => l_ccid
6986: , p_value_type_code => l_adr_value_type_code
6987: , p_transaction_coa_id => l_adr_transaction_coa_id
6988: , p_accounting_coa_id => l_adr_accounting_coa_id
7003:
7004: --
7005: -- Update the line information that should be overwritten
7006: --
7007: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7008: p_header_num => 1);
7009: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7010:
7011: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7005: -- Update the line information that should be overwritten
7006: --
7007: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7008: p_header_num => 1);
7009: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7010:
7011: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7012:
7013: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7007: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7008: p_header_num => 1);
7009: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7010:
7011: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7012:
7013: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7014: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7015: END IF;
7010:
7011: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7012:
7013: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7014: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7015: END IF;
7016:
7017: --
7018: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7017: --
7018: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7019: --
7020: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
7021: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
7022: ELSE
7023: ---------------------------------------------------------------------------------------------------
7024: -- 4262811a Switch Sign
7025: ---------------------------------------------------------------------------------------------------
7022: ELSE
7023: ---------------------------------------------------------------------------------------------------
7024: -- 4262811a Switch Sign
7025: ---------------------------------------------------------------------------------------------------
7026: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7028: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7030: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7023: ---------------------------------------------------------------------------------------------------
7024: -- 4262811a Switch Sign
7025: ---------------------------------------------------------------------------------------------------
7026: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7028: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7030: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7031: -- 5132302
7024: -- 4262811a Switch Sign
7025: ---------------------------------------------------------------------------------------------------
7026: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7028: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7030: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7031: -- 5132302
7032: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7025: ---------------------------------------------------------------------------------------------------
7026: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7028: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7030: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7031: -- 5132302
7032: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7033: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7026: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7027: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7028: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7030: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7031: -- 5132302
7032: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7033: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7034:
7028: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7030: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7031: -- 5132302
7032: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7033: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7034:
7035: END IF;
7036:
7029: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7030: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7031: -- 5132302
7032: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7033: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7034:
7035: END IF;
7036:
7037: -- 4955764
7034:
7035: END IF;
7036:
7037: -- 4955764
7038: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7039: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7040:
7041:
7042: XLA_AE_LINES_PKG.ValidateCurrentLine;
7038: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7039: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7040:
7041:
7042: XLA_AE_LINES_PKG.ValidateCurrentLine;
7043: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7044:
7045: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7046: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7039: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7040:
7041:
7042: XLA_AE_LINES_PKG.ValidateCurrentLine;
7043: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7044:
7045: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7046: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7047: ,p_balance_type_code => l_balance_type_code);
7182: --
7183: -- bulk performance
7184: --
7185: l_balance_type_code VARCHAR2(1);
7186: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
7187: l_log_module VARCHAR2(240);
7188:
7189: --
7190: -- Upgrade strategy
7250: ') = 'CHARGES'
7251: THEN
7252:
7253: --
7254: XLA_AE_LINES_PKG.SetNewLine;
7255:
7256: p_balance_type_code := l_balance_type_code;
7257: -- set the flag so later we will know whether the gain loss line needs to be created
7258:
7262:
7263: --
7264: -- bulk performance
7265: --
7266: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
7267: p_header_num => 0); -- 4262811
7268: --
7269: -- set accounting line options
7270: --
7267: p_header_num => 0); -- 4262811
7268: --
7269: -- set accounting line options
7270: --
7271: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
7272: p_natural_side_code => 'C'
7273: , p_gain_or_loss_flag => 'N'
7274: , p_gl_transfer_mode_code => 'S'
7275: , p_acct_entry_type_code => 'A'
7281: --
7282: --
7283: -- set accounting line type info
7284: --
7285: xla_ae_lines_pkg.SetAcctLineType
7286: (p_component_type => l_component_type
7287: ,p_event_type_code => l_event_type_code
7288: ,p_line_definition_owner_code => l_line_definition_owner_code
7289: ,p_line_definition_code => l_line_definition_code
7295: ,p_event_class_code => l_event_class_code);
7296: --
7297: -- set accounting class
7298: --
7299: xla_ae_lines_pkg.SetAcctClass(
7300: p_accounting_class_code => 'CHARGES'
7301: , p_ae_header_id => l_ae_header_id
7302: );
7303:
7303:
7304: --
7305: -- set rounding class
7306: --
7307: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7308: 'RECEIVABLE';
7309:
7310: --
7311: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7307: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7308: 'RECEIVABLE';
7309:
7310: --
7311: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7312: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7313: --
7314: -- bulk performance
7315: --
7308: 'RECEIVABLE';
7309:
7310: --
7311: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7312: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7313: --
7314: -- bulk performance
7315: --
7316: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7312: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7313: --
7314: -- bulk performance
7315: --
7316: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7317:
7318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7319: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7320:
7314: -- bulk performance
7315: --
7316: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7317:
7318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7319: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7320:
7321: -- 4955764
7322: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7319: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7320:
7321: -- 4955764
7322: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7323: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
7324:
7325: -- 4458381 Public Sector Enh
7326:
7356: l_rec_acct_attrs.array_char_value(12) := p_source_25;
7357: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
7358: l_rec_acct_attrs.array_num_value(13) := p_source_45;
7359:
7360: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7361: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7362:
7363: ---------------------------------------------------------------------------------------------------------------
7364: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7357: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
7358: l_rec_acct_attrs.array_num_value(13) := p_source_45;
7359:
7360: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7361: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7362:
7363: ---------------------------------------------------------------------------------------------------------------
7364: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7365: ---------------------------------------------------------------------------------------------------------------
7360: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7361: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7362:
7363: ---------------------------------------------------------------------------------------------------------------
7364: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7365: ---------------------------------------------------------------------------------------------------------------
7366: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7367:
7368: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7362:
7363: ---------------------------------------------------------------------------------------------------------------
7364: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7365: ---------------------------------------------------------------------------------------------------------------
7366: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7367:
7368: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7369: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7370:
7364: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7365: ---------------------------------------------------------------------------------------------------------------
7366: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7367:
7368: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7369: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7370:
7371: IF xla_accounting_cache_pkg.GetValueChar
7372: (p_source_code => 'LEDGER_CATEGORY_CODE'
7365: ---------------------------------------------------------------------------------------------------------------
7366: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7367:
7368: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7369: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7370:
7371: IF xla_accounting_cache_pkg.GetValueChar
7372: (p_source_code => 'LEDGER_CATEGORY_CODE'
7373: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
7376: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
7377: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
7378: )
7379: THEN
7380: xla_ae_lines_pkg.BflowUpgEntry
7381: (p_business_method_code => l_bflow_method_code
7382: ,p_business_class_code => l_bflow_class_code
7383: ,p_balance_type => l_balance_type_code);
7384: ELSE
7416: , x_value_type_code => l_adr_value_type_code
7417: , p_side => 'NA'
7418: );
7419:
7420: xla_ae_lines_pkg.set_ccid(
7421: p_code_combination_id => l_ccid
7422: , p_value_type_code => l_adr_value_type_code
7423: , p_transaction_coa_id => l_adr_transaction_coa_id
7424: , p_accounting_coa_id => l_adr_accounting_coa_id
7452: xla_accounting_err_pkg.build_message
7453: (p_appli_s_name => 'XLA'
7454: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
7455: ,p_token_1 => 'LINE_NUMBER'
7456: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
7457: ,p_token_2 => 'LINE_TYPE_NAME'
7458: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
7459: l_component_type
7460: ,l_component_code
7488: --
7489: --
7490: ------------------------------------------------------------------------------------------------
7491: -- 4219869 Business Flow
7492: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7493: -- Prior Entry. Currently, the following code is always generated.
7494: ------------------------------------------------------------------------------------------------
7495: XLA_AE_LINES_PKG.ValidateCurrentLine;
7496:
7491: -- 4219869 Business Flow
7492: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7493: -- Prior Entry. Currently, the following code is always generated.
7494: ------------------------------------------------------------------------------------------------
7495: XLA_AE_LINES_PKG.ValidateCurrentLine;
7496:
7497: ------------------------------------------------------------------------------------
7498: -- 4219869 Business Flow
7499: -- Populated credit and debit amounts -- Need to generate this within IF
7497: ------------------------------------------------------------------------------------
7498: -- 4219869 Business Flow
7499: -- Populated credit and debit amounts -- Need to generate this within IF
7500: ------------------------------------------------------------------------------------
7501: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7502:
7503: ----------------------------------------------------------------------------------
7504: -- 4219869 Business Flow
7505: -- Update journal entry status -- Need to generate this within IF
7529: -- To allow MPA report to determine if it should generate report process
7530: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7531: ------------------------------------------------------------------------------------------
7532:
7533: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7534: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7535: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7536: -- call ADRs
7537: -- Bug 4922099
7530: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7531: ------------------------------------------------------------------------------------------
7532:
7533: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7534: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7535: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7536: -- call ADRs
7537: -- Bug 4922099
7538: --
7554: , x_value_type_code => l_adr_value_type_code
7555: , p_side => 'NA'
7556: );
7557:
7558: xla_ae_lines_pkg.set_ccid(
7559: p_code_combination_id => l_ccid
7560: , p_value_type_code => l_adr_value_type_code
7561: , p_transaction_coa_id => l_adr_transaction_coa_id
7562: , p_accounting_coa_id => l_adr_accounting_coa_id
7577:
7578: --
7579: -- Update the line information that should be overwritten
7580: --
7581: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7582: p_header_num => 1);
7583: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7584:
7585: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7579: -- Update the line information that should be overwritten
7580: --
7581: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7582: p_header_num => 1);
7583: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7584:
7585: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7586:
7587: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7581: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7582: p_header_num => 1);
7583: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7584:
7585: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7586:
7587: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7588: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7589: END IF;
7584:
7585: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7586:
7587: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7588: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7589: END IF;
7590:
7591: --
7592: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7591: --
7592: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7593: --
7594: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
7595: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
7596: ELSE
7597: ---------------------------------------------------------------------------------------------------
7598: -- 4262811a Switch Sign
7599: ---------------------------------------------------------------------------------------------------
7596: ELSE
7597: ---------------------------------------------------------------------------------------------------
7598: -- 4262811a Switch Sign
7599: ---------------------------------------------------------------------------------------------------
7600: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7601: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7602: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7603: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7604: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7597: ---------------------------------------------------------------------------------------------------
7598: -- 4262811a Switch Sign
7599: ---------------------------------------------------------------------------------------------------
7600: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7601: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7602: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7603: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7604: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7605: -- 5132302
7598: -- 4262811a Switch Sign
7599: ---------------------------------------------------------------------------------------------------
7600: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7601: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7602: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7603: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7604: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7605: -- 5132302
7606: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7599: ---------------------------------------------------------------------------------------------------
7600: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7601: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7602: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7603: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7604: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7605: -- 5132302
7606: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7607: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7600: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7601: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7602: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7603: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7604: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7605: -- 5132302
7606: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7607: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7608:
7602: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7603: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7604: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7605: -- 5132302
7606: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7607: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7608:
7609: END IF;
7610:
7603: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7604: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7605: -- 5132302
7606: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7607: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7608:
7609: END IF;
7610:
7611: -- 4955764
7608:
7609: END IF;
7610:
7611: -- 4955764
7612: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7613: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7614:
7615:
7616: XLA_AE_LINES_PKG.ValidateCurrentLine;
7612: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7613: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7614:
7615:
7616: XLA_AE_LINES_PKG.ValidateCurrentLine;
7617: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7618:
7619: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7620: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7613: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7614:
7615:
7616: XLA_AE_LINES_PKG.ValidateCurrentLine;
7617: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7618:
7619: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7620: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7621: ,p_balance_type_code => l_balance_type_code);
7756: --
7757: -- bulk performance
7758: --
7759: l_balance_type_code VARCHAR2(1);
7760: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
7761: l_log_module VARCHAR2(240);
7762:
7763: --
7764: -- Upgrade strategy
7824: ') = 'FREIGHT'
7825: THEN
7826:
7827: --
7828: XLA_AE_LINES_PKG.SetNewLine;
7829:
7830: p_balance_type_code := l_balance_type_code;
7831: -- set the flag so later we will know whether the gain loss line needs to be created
7832:
7836:
7837: --
7838: -- bulk performance
7839: --
7840: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
7841: p_header_num => 0); -- 4262811
7842: --
7843: -- set accounting line options
7844: --
7841: p_header_num => 0); -- 4262811
7842: --
7843: -- set accounting line options
7844: --
7845: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
7846: p_natural_side_code => 'C'
7847: , p_gain_or_loss_flag => 'N'
7848: , p_gl_transfer_mode_code => 'S'
7849: , p_acct_entry_type_code => 'A'
7855: --
7856: --
7857: -- set accounting line type info
7858: --
7859: xla_ae_lines_pkg.SetAcctLineType
7860: (p_component_type => l_component_type
7861: ,p_event_type_code => l_event_type_code
7862: ,p_line_definition_owner_code => l_line_definition_owner_code
7863: ,p_line_definition_code => l_line_definition_code
7869: ,p_event_class_code => l_event_class_code);
7870: --
7871: -- set accounting class
7872: --
7873: xla_ae_lines_pkg.SetAcctClass(
7874: p_accounting_class_code => 'FREIGHT'
7875: , p_ae_header_id => l_ae_header_id
7876: );
7877:
7877:
7878: --
7879: -- set rounding class
7880: --
7881: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7882: 'RECEIVABLE';
7883:
7884: --
7885: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7881: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7882: 'RECEIVABLE';
7883:
7884: --
7885: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7886: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7887: --
7888: -- bulk performance
7889: --
7882: 'RECEIVABLE';
7883:
7884: --
7885: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7886: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7887: --
7888: -- bulk performance
7889: --
7890: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7886: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7887: --
7888: -- bulk performance
7889: --
7890: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7891:
7892: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7894:
7888: -- bulk performance
7889: --
7890: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7891:
7892: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7894:
7895: -- 4955764
7896: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7892: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7894:
7895: -- 4955764
7896: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7897: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
7898:
7899: -- 4458381 Public Sector Enh
7900:
7930: l_rec_acct_attrs.array_char_value(12) := p_source_25;
7931: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
7932: l_rec_acct_attrs.array_num_value(13) := p_source_45;
7933:
7934: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7935: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7936:
7937: ---------------------------------------------------------------------------------------------------------------
7938: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7931: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
7932: l_rec_acct_attrs.array_num_value(13) := p_source_45;
7933:
7934: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7935: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7936:
7937: ---------------------------------------------------------------------------------------------------------------
7938: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7939: ---------------------------------------------------------------------------------------------------------------
7934: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7935: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7936:
7937: ---------------------------------------------------------------------------------------------------------------
7938: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7939: ---------------------------------------------------------------------------------------------------------------
7940: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7941:
7942: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7936:
7937: ---------------------------------------------------------------------------------------------------------------
7938: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7939: ---------------------------------------------------------------------------------------------------------------
7940: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7941:
7942: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7943: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7944:
7938: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7939: ---------------------------------------------------------------------------------------------------------------
7940: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7941:
7942: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7943: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7944:
7945: IF xla_accounting_cache_pkg.GetValueChar
7946: (p_source_code => 'LEDGER_CATEGORY_CODE'
7939: ---------------------------------------------------------------------------------------------------------------
7940: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7941:
7942: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7943: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7944:
7945: IF xla_accounting_cache_pkg.GetValueChar
7946: (p_source_code => 'LEDGER_CATEGORY_CODE'
7947: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
7950: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
7951: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
7952: )
7953: THEN
7954: xla_ae_lines_pkg.BflowUpgEntry
7955: (p_business_method_code => l_bflow_method_code
7956: ,p_business_class_code => l_bflow_class_code
7957: ,p_balance_type => l_balance_type_code);
7958: ELSE
7990: , x_value_type_code => l_adr_value_type_code
7991: , p_side => 'NA'
7992: );
7993:
7994: xla_ae_lines_pkg.set_ccid(
7995: p_code_combination_id => l_ccid
7996: , p_value_type_code => l_adr_value_type_code
7997: , p_transaction_coa_id => l_adr_transaction_coa_id
7998: , p_accounting_coa_id => l_adr_accounting_coa_id
8026: xla_accounting_err_pkg.build_message
8027: (p_appli_s_name => 'XLA'
8028: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
8029: ,p_token_1 => 'LINE_NUMBER'
8030: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
8031: ,p_token_2 => 'LINE_TYPE_NAME'
8032: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
8033: l_component_type
8034: ,l_component_code
8062: --
8063: --
8064: ------------------------------------------------------------------------------------------------
8065: -- 4219869 Business Flow
8066: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8067: -- Prior Entry. Currently, the following code is always generated.
8068: ------------------------------------------------------------------------------------------------
8069: XLA_AE_LINES_PKG.ValidateCurrentLine;
8070:
8065: -- 4219869 Business Flow
8066: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8067: -- Prior Entry. Currently, the following code is always generated.
8068: ------------------------------------------------------------------------------------------------
8069: XLA_AE_LINES_PKG.ValidateCurrentLine;
8070:
8071: ------------------------------------------------------------------------------------
8072: -- 4219869 Business Flow
8073: -- Populated credit and debit amounts -- Need to generate this within IF
8071: ------------------------------------------------------------------------------------
8072: -- 4219869 Business Flow
8073: -- Populated credit and debit amounts -- Need to generate this within IF
8074: ------------------------------------------------------------------------------------
8075: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8076:
8077: ----------------------------------------------------------------------------------
8078: -- 4219869 Business Flow
8079: -- Update journal entry status -- Need to generate this within IF
8103: -- To allow MPA report to determine if it should generate report process
8104: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8105: ------------------------------------------------------------------------------------------
8106:
8107: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8108: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8109: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8110: -- call ADRs
8111: -- Bug 4922099
8104: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8105: ------------------------------------------------------------------------------------------
8106:
8107: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8108: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8109: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8110: -- call ADRs
8111: -- Bug 4922099
8112: --
8128: , x_value_type_code => l_adr_value_type_code
8129: , p_side => 'NA'
8130: );
8131:
8132: xla_ae_lines_pkg.set_ccid(
8133: p_code_combination_id => l_ccid
8134: , p_value_type_code => l_adr_value_type_code
8135: , p_transaction_coa_id => l_adr_transaction_coa_id
8136: , p_accounting_coa_id => l_adr_accounting_coa_id
8151:
8152: --
8153: -- Update the line information that should be overwritten
8154: --
8155: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8156: p_header_num => 1);
8157: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8158:
8159: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8153: -- Update the line information that should be overwritten
8154: --
8155: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8156: p_header_num => 1);
8157: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8158:
8159: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8160:
8161: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8155: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8156: p_header_num => 1);
8157: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8158:
8159: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8160:
8161: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8162: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8163: END IF;
8158:
8159: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8160:
8161: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8162: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8163: END IF;
8164:
8165: --
8166: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8165: --
8166: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8167: --
8168: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
8169: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
8170: ELSE
8171: ---------------------------------------------------------------------------------------------------
8172: -- 4262811a Switch Sign
8173: ---------------------------------------------------------------------------------------------------
8170: ELSE
8171: ---------------------------------------------------------------------------------------------------
8172: -- 4262811a Switch Sign
8173: ---------------------------------------------------------------------------------------------------
8174: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8176: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8171: ---------------------------------------------------------------------------------------------------
8172: -- 4262811a Switch Sign
8173: ---------------------------------------------------------------------------------------------------
8174: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8176: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8179: -- 5132302
8172: -- 4262811a Switch Sign
8173: ---------------------------------------------------------------------------------------------------
8174: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8176: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8179: -- 5132302
8180: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8173: ---------------------------------------------------------------------------------------------------
8174: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8176: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8179: -- 5132302
8180: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8181: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8174: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8176: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8179: -- 5132302
8180: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8181: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8182:
8176: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8179: -- 5132302
8180: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8181: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8182:
8183: END IF;
8184:
8177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8179: -- 5132302
8180: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8181: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8182:
8183: END IF;
8184:
8185: -- 4955764
8182:
8183: END IF;
8184:
8185: -- 4955764
8186: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8187: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8188:
8189:
8190: XLA_AE_LINES_PKG.ValidateCurrentLine;
8186: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8187: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8188:
8189:
8190: XLA_AE_LINES_PKG.ValidateCurrentLine;
8191: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8192:
8193: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8194: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8187: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8188:
8189:
8190: XLA_AE_LINES_PKG.ValidateCurrentLine;
8191: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8192:
8193: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8194: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8195: ,p_balance_type_code => l_balance_type_code);
8330: --
8331: -- bulk performance
8332: --
8333: l_balance_type_code VARCHAR2(1);
8334: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
8335: l_log_module VARCHAR2(240);
8336:
8337: --
8338: -- Upgrade strategy
8398: ') = 'REV'
8399: THEN
8400:
8401: --
8402: XLA_AE_LINES_PKG.SetNewLine;
8403:
8404: p_balance_type_code := l_balance_type_code;
8405: -- set the flag so later we will know whether the gain loss line needs to be created
8406:
8410:
8411: --
8412: -- bulk performance
8413: --
8414: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
8415: p_header_num => 0); -- 4262811
8416: --
8417: -- set accounting line options
8418: --
8415: p_header_num => 0); -- 4262811
8416: --
8417: -- set accounting line options
8418: --
8419: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
8420: p_natural_side_code => 'C'
8421: , p_gain_or_loss_flag => 'N'
8422: , p_gl_transfer_mode_code => 'S'
8423: , p_acct_entry_type_code => 'A'
8429: --
8430: --
8431: -- set accounting line type info
8432: --
8433: xla_ae_lines_pkg.SetAcctLineType
8434: (p_component_type => l_component_type
8435: ,p_event_type_code => l_event_type_code
8436: ,p_line_definition_owner_code => l_line_definition_owner_code
8437: ,p_line_definition_code => l_line_definition_code
8443: ,p_event_class_code => l_event_class_code);
8444: --
8445: -- set accounting class
8446: --
8447: xla_ae_lines_pkg.SetAcctClass(
8448: p_accounting_class_code => 'REVENUE'
8449: , p_ae_header_id => l_ae_header_id
8450: );
8451:
8451:
8452: --
8453: -- set rounding class
8454: --
8455: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8456: 'RECEIVABLE';
8457:
8458: --
8459: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8455: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8456: 'RECEIVABLE';
8457:
8458: --
8459: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8460: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8461: --
8462: -- bulk performance
8463: --
8456: 'RECEIVABLE';
8457:
8458: --
8459: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8460: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8461: --
8462: -- bulk performance
8463: --
8464: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8460: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8461: --
8462: -- bulk performance
8463: --
8464: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8465:
8466: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8467: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8468:
8462: -- bulk performance
8463: --
8464: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8465:
8466: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8467: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8468:
8469: -- 4955764
8470: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8466: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8467: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8468:
8469: -- 4955764
8470: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8471: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
8472:
8473: -- 4458381 Public Sector Enh
8474:
8504: l_rec_acct_attrs.array_char_value(12) := p_source_25;
8505: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
8506: l_rec_acct_attrs.array_num_value(13) := p_source_45;
8507:
8508: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8509: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8510:
8511: ---------------------------------------------------------------------------------------------------------------
8512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8505: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
8506: l_rec_acct_attrs.array_num_value(13) := p_source_45;
8507:
8508: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8509: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8510:
8511: ---------------------------------------------------------------------------------------------------------------
8512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8513: ---------------------------------------------------------------------------------------------------------------
8508: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8509: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8510:
8511: ---------------------------------------------------------------------------------------------------------------
8512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8513: ---------------------------------------------------------------------------------------------------------------
8514: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8515:
8516: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8510:
8511: ---------------------------------------------------------------------------------------------------------------
8512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8513: ---------------------------------------------------------------------------------------------------------------
8514: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8515:
8516: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8517: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8518:
8512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8513: ---------------------------------------------------------------------------------------------------------------
8514: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8515:
8516: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8517: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8518:
8519: IF xla_accounting_cache_pkg.GetValueChar
8520: (p_source_code => 'LEDGER_CATEGORY_CODE'
8513: ---------------------------------------------------------------------------------------------------------------
8514: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8515:
8516: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8517: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8518:
8519: IF xla_accounting_cache_pkg.GetValueChar
8520: (p_source_code => 'LEDGER_CATEGORY_CODE'
8521: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
8524: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
8525: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
8526: )
8527: THEN
8528: xla_ae_lines_pkg.BflowUpgEntry
8529: (p_business_method_code => l_bflow_method_code
8530: ,p_business_class_code => l_bflow_class_code
8531: ,p_balance_type => l_balance_type_code);
8532: ELSE
8564: , x_value_type_code => l_adr_value_type_code
8565: , p_side => 'NA'
8566: );
8567:
8568: xla_ae_lines_pkg.set_ccid(
8569: p_code_combination_id => l_ccid
8570: , p_value_type_code => l_adr_value_type_code
8571: , p_transaction_coa_id => l_adr_transaction_coa_id
8572: , p_accounting_coa_id => l_adr_accounting_coa_id
8600: xla_accounting_err_pkg.build_message
8601: (p_appli_s_name => 'XLA'
8602: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
8603: ,p_token_1 => 'LINE_NUMBER'
8604: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
8605: ,p_token_2 => 'LINE_TYPE_NAME'
8606: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
8607: l_component_type
8608: ,l_component_code
8636: --
8637: --
8638: ------------------------------------------------------------------------------------------------
8639: -- 4219869 Business Flow
8640: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8641: -- Prior Entry. Currently, the following code is always generated.
8642: ------------------------------------------------------------------------------------------------
8643: XLA_AE_LINES_PKG.ValidateCurrentLine;
8644:
8639: -- 4219869 Business Flow
8640: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8641: -- Prior Entry. Currently, the following code is always generated.
8642: ------------------------------------------------------------------------------------------------
8643: XLA_AE_LINES_PKG.ValidateCurrentLine;
8644:
8645: ------------------------------------------------------------------------------------
8646: -- 4219869 Business Flow
8647: -- Populated credit and debit amounts -- Need to generate this within IF
8645: ------------------------------------------------------------------------------------
8646: -- 4219869 Business Flow
8647: -- Populated credit and debit amounts -- Need to generate this within IF
8648: ------------------------------------------------------------------------------------
8649: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8650:
8651: ----------------------------------------------------------------------------------
8652: -- 4219869 Business Flow
8653: -- Update journal entry status -- Need to generate this within IF
8677: -- To allow MPA report to determine if it should generate report process
8678: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8679: ------------------------------------------------------------------------------------------
8680:
8681: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8682: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8683: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8684: -- call ADRs
8685: -- Bug 4922099
8678: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8679: ------------------------------------------------------------------------------------------
8680:
8681: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8682: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8683: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8684: -- call ADRs
8685: -- Bug 4922099
8686: --
8702: , x_value_type_code => l_adr_value_type_code
8703: , p_side => 'NA'
8704: );
8705:
8706: xla_ae_lines_pkg.set_ccid(
8707: p_code_combination_id => l_ccid
8708: , p_value_type_code => l_adr_value_type_code
8709: , p_transaction_coa_id => l_adr_transaction_coa_id
8710: , p_accounting_coa_id => l_adr_accounting_coa_id
8725:
8726: --
8727: -- Update the line information that should be overwritten
8728: --
8729: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8730: p_header_num => 1);
8731: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8732:
8733: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8727: -- Update the line information that should be overwritten
8728: --
8729: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8730: p_header_num => 1);
8731: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8732:
8733: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8734:
8735: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8729: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8730: p_header_num => 1);
8731: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8732:
8733: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8734:
8735: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8736: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8737: END IF;
8732:
8733: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8734:
8735: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8736: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8737: END IF;
8738:
8739: --
8740: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8739: --
8740: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8741: --
8742: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
8743: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
8744: ELSE
8745: ---------------------------------------------------------------------------------------------------
8746: -- 4262811a Switch Sign
8747: ---------------------------------------------------------------------------------------------------
8744: ELSE
8745: ---------------------------------------------------------------------------------------------------
8746: -- 4262811a Switch Sign
8747: ---------------------------------------------------------------------------------------------------
8748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8745: ---------------------------------------------------------------------------------------------------
8746: -- 4262811a Switch Sign
8747: ---------------------------------------------------------------------------------------------------
8748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8753: -- 5132302
8746: -- 4262811a Switch Sign
8747: ---------------------------------------------------------------------------------------------------
8748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8753: -- 5132302
8754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8747: ---------------------------------------------------------------------------------------------------
8748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8753: -- 5132302
8754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8753: -- 5132302
8754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8756:
8750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8753: -- 5132302
8754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8756:
8757: END IF;
8758:
8751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8753: -- 5132302
8754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8756:
8757: END IF;
8758:
8759: -- 4955764
8756:
8757: END IF;
8758:
8759: -- 4955764
8760: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8761: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8762:
8763:
8764: XLA_AE_LINES_PKG.ValidateCurrentLine;
8760: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8761: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8762:
8763:
8764: XLA_AE_LINES_PKG.ValidateCurrentLine;
8765: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8766:
8767: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8768: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8761: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8762:
8763:
8764: XLA_AE_LINES_PKG.ValidateCurrentLine;
8765: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8766:
8767: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8768: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8769: ,p_balance_type_code => l_balance_type_code);
8904: --
8905: -- bulk performance
8906: --
8907: l_balance_type_code VARCHAR2(1);
8908: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
8909: l_log_module VARCHAR2(240);
8910:
8911: --
8912: -- Upgrade strategy
8972: ') = 'TAX'
8973: THEN
8974:
8975: --
8976: XLA_AE_LINES_PKG.SetNewLine;
8977:
8978: p_balance_type_code := l_balance_type_code;
8979: -- set the flag so later we will know whether the gain loss line needs to be created
8980:
8984:
8985: --
8986: -- bulk performance
8987: --
8988: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
8989: p_header_num => 0); -- 4262811
8990: --
8991: -- set accounting line options
8992: --
8989: p_header_num => 0); -- 4262811
8990: --
8991: -- set accounting line options
8992: --
8993: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
8994: p_natural_side_code => 'C'
8995: , p_gain_or_loss_flag => 'N'
8996: , p_gl_transfer_mode_code => 'S'
8997: , p_acct_entry_type_code => 'A'
9003: --
9004: --
9005: -- set accounting line type info
9006: --
9007: xla_ae_lines_pkg.SetAcctLineType
9008: (p_component_type => l_component_type
9009: ,p_event_type_code => l_event_type_code
9010: ,p_line_definition_owner_code => l_line_definition_owner_code
9011: ,p_line_definition_code => l_line_definition_code
9017: ,p_event_class_code => l_event_class_code);
9018: --
9019: -- set accounting class
9020: --
9021: xla_ae_lines_pkg.SetAcctClass(
9022: p_accounting_class_code => 'TAX'
9023: , p_ae_header_id => l_ae_header_id
9024: );
9025:
9025:
9026: --
9027: -- set rounding class
9028: --
9029: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9030: 'RECEIVABLE';
9031:
9032: --
9033: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9029: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9030: 'RECEIVABLE';
9031:
9032: --
9033: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9034: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9035: --
9036: -- bulk performance
9037: --
9030: 'RECEIVABLE';
9031:
9032: --
9033: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9034: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9035: --
9036: -- bulk performance
9037: --
9038: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9034: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9035: --
9036: -- bulk performance
9037: --
9038: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9039:
9040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9041: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9042:
9036: -- bulk performance
9037: --
9038: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9039:
9040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9041: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9042:
9043: -- 4955764
9044: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9041: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9042:
9043: -- 4955764
9044: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9045: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
9046:
9047: -- 4458381 Public Sector Enh
9048:
9078: l_rec_acct_attrs.array_char_value(12) := p_source_25;
9079: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
9080: l_rec_acct_attrs.array_num_value(13) := p_source_45;
9081:
9082: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9083: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9084:
9085: ---------------------------------------------------------------------------------------------------------------
9086: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9079: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
9080: l_rec_acct_attrs.array_num_value(13) := p_source_45;
9081:
9082: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9083: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9084:
9085: ---------------------------------------------------------------------------------------------------------------
9086: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9087: ---------------------------------------------------------------------------------------------------------------
9082: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9083: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9084:
9085: ---------------------------------------------------------------------------------------------------------------
9086: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9087: ---------------------------------------------------------------------------------------------------------------
9088: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9089:
9090: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9084:
9085: ---------------------------------------------------------------------------------------------------------------
9086: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9087: ---------------------------------------------------------------------------------------------------------------
9088: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9089:
9090: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9091: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9092:
9086: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9087: ---------------------------------------------------------------------------------------------------------------
9088: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9089:
9090: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9091: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9092:
9093: IF xla_accounting_cache_pkg.GetValueChar
9094: (p_source_code => 'LEDGER_CATEGORY_CODE'
9087: ---------------------------------------------------------------------------------------------------------------
9088: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9089:
9090: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9091: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9092:
9093: IF xla_accounting_cache_pkg.GetValueChar
9094: (p_source_code => 'LEDGER_CATEGORY_CODE'
9095: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
9098: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
9099: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
9100: )
9101: THEN
9102: xla_ae_lines_pkg.BflowUpgEntry
9103: (p_business_method_code => l_bflow_method_code
9104: ,p_business_class_code => l_bflow_class_code
9105: ,p_balance_type => l_balance_type_code);
9106: ELSE
9138: , x_value_type_code => l_adr_value_type_code
9139: , p_side => 'NA'
9140: );
9141:
9142: xla_ae_lines_pkg.set_ccid(
9143: p_code_combination_id => l_ccid
9144: , p_value_type_code => l_adr_value_type_code
9145: , p_transaction_coa_id => l_adr_transaction_coa_id
9146: , p_accounting_coa_id => l_adr_accounting_coa_id
9174: xla_accounting_err_pkg.build_message
9175: (p_appli_s_name => 'XLA'
9176: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
9177: ,p_token_1 => 'LINE_NUMBER'
9178: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
9179: ,p_token_2 => 'LINE_TYPE_NAME'
9180: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
9181: l_component_type
9182: ,l_component_code
9210: --
9211: --
9212: ------------------------------------------------------------------------------------------------
9213: -- 4219869 Business Flow
9214: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9215: -- Prior Entry. Currently, the following code is always generated.
9216: ------------------------------------------------------------------------------------------------
9217: XLA_AE_LINES_PKG.ValidateCurrentLine;
9218:
9213: -- 4219869 Business Flow
9214: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9215: -- Prior Entry. Currently, the following code is always generated.
9216: ------------------------------------------------------------------------------------------------
9217: XLA_AE_LINES_PKG.ValidateCurrentLine;
9218:
9219: ------------------------------------------------------------------------------------
9220: -- 4219869 Business Flow
9221: -- Populated credit and debit amounts -- Need to generate this within IF
9219: ------------------------------------------------------------------------------------
9220: -- 4219869 Business Flow
9221: -- Populated credit and debit amounts -- Need to generate this within IF
9222: ------------------------------------------------------------------------------------
9223: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9224:
9225: ----------------------------------------------------------------------------------
9226: -- 4219869 Business Flow
9227: -- Update journal entry status -- Need to generate this within IF
9251: -- To allow MPA report to determine if it should generate report process
9252: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9253: ------------------------------------------------------------------------------------------
9254:
9255: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9256: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9257: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9258: -- call ADRs
9259: -- Bug 4922099
9252: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9253: ------------------------------------------------------------------------------------------
9254:
9255: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9256: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9257: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9258: -- call ADRs
9259: -- Bug 4922099
9260: --
9276: , x_value_type_code => l_adr_value_type_code
9277: , p_side => 'NA'
9278: );
9279:
9280: xla_ae_lines_pkg.set_ccid(
9281: p_code_combination_id => l_ccid
9282: , p_value_type_code => l_adr_value_type_code
9283: , p_transaction_coa_id => l_adr_transaction_coa_id
9284: , p_accounting_coa_id => l_adr_accounting_coa_id
9299:
9300: --
9301: -- Update the line information that should be overwritten
9302: --
9303: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9304: p_header_num => 1);
9305: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9306:
9307: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9301: -- Update the line information that should be overwritten
9302: --
9303: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9304: p_header_num => 1);
9305: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9306:
9307: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9308:
9309: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9303: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9304: p_header_num => 1);
9305: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9306:
9307: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9308:
9309: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9310: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9311: END IF;
9306:
9307: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9308:
9309: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9310: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9311: END IF;
9312:
9313: --
9314: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9313: --
9314: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9315: --
9316: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
9317: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
9318: ELSE
9319: ---------------------------------------------------------------------------------------------------
9320: -- 4262811a Switch Sign
9321: ---------------------------------------------------------------------------------------------------
9318: ELSE
9319: ---------------------------------------------------------------------------------------------------
9320: -- 4262811a Switch Sign
9321: ---------------------------------------------------------------------------------------------------
9322: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9323: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9325: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9319: ---------------------------------------------------------------------------------------------------
9320: -- 4262811a Switch Sign
9321: ---------------------------------------------------------------------------------------------------
9322: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9323: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9325: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9327: -- 5132302
9320: -- 4262811a Switch Sign
9321: ---------------------------------------------------------------------------------------------------
9322: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9323: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9325: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9327: -- 5132302
9328: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9321: ---------------------------------------------------------------------------------------------------
9322: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9323: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9325: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9327: -- 5132302
9328: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9322: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9323: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9325: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9327: -- 5132302
9328: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9330:
9324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9325: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9327: -- 5132302
9328: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9330:
9331: END IF;
9332:
9325: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9327: -- 5132302
9328: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9330:
9331: END IF;
9332:
9333: -- 4955764
9330:
9331: END IF;
9332:
9333: -- 4955764
9334: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9335: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9336:
9337:
9338: XLA_AE_LINES_PKG.ValidateCurrentLine;
9334: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9335: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9336:
9337:
9338: XLA_AE_LINES_PKG.ValidateCurrentLine;
9339: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9340:
9341: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9342: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9335: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9336:
9337:
9338: XLA_AE_LINES_PKG.ValidateCurrentLine;
9339: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9340:
9341: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9342: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9343: ,p_balance_type_code => l_balance_type_code);
9468: --
9469: -- bulk performance
9470: --
9471: l_balance_type_code VARCHAR2(1);
9472: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
9473: l_log_module VARCHAR2(240);
9474:
9475: --
9476: -- Upgrade strategy
9537: IF XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id = XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id OR
9538: l_balance_type_code <> 'B' THEN
9539:
9540: --
9541: XLA_AE_LINES_PKG.SetNewLine;
9542:
9543: p_balance_type_code := l_balance_type_code;
9544: -- set the flag so later we will know whether the gain loss line needs to be created
9545:
9549:
9550: --
9551: -- bulk performance
9552: --
9553: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
9554: p_header_num => 0); -- 4262811
9555: --
9556: -- set accounting line options
9557: --
9554: p_header_num => 0); -- 4262811
9555: --
9556: -- set accounting line options
9557: --
9558: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
9559: p_natural_side_code => 'G'
9560: , p_gain_or_loss_flag => 'N'
9561: , p_gl_transfer_mode_code => 'S'
9562: , p_acct_entry_type_code => 'A'
9568: --
9569: --
9570: -- set accounting line type info
9571: --
9572: xla_ae_lines_pkg.SetAcctLineType
9573: (p_component_type => l_component_type
9574: ,p_event_type_code => l_event_type_code
9575: ,p_line_definition_owner_code => l_line_definition_owner_code
9576: ,p_line_definition_code => l_line_definition_code
9582: ,p_event_class_code => l_event_class_code);
9583: --
9584: -- set accounting class
9585: --
9586: xla_ae_lines_pkg.SetAcctClass(
9587: p_accounting_class_code => 'EXCHANGE_GAIN_LOSS'
9588: , p_ae_header_id => l_ae_header_id
9589: );
9590:
9590:
9591: --
9592: -- set rounding class
9593: --
9594: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9595: 'EXCHANGE_GAIN_LOSS';
9596:
9597: --
9598: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9594: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9595: 'EXCHANGE_GAIN_LOSS';
9596:
9597: --
9598: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9599: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9600: --
9601: -- bulk performance
9602: --
9595: 'EXCHANGE_GAIN_LOSS';
9596:
9597: --
9598: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9599: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9600: --
9601: -- bulk performance
9602: --
9603: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9599: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9600: --
9601: -- bulk performance
9602: --
9603: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9604:
9605: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9606: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9607:
9601: -- bulk performance
9602: --
9603: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9604:
9605: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9606: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9607:
9608: -- 4955764
9609: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9605: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9606: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9607:
9608: -- 4955764
9609: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9610: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
9611:
9612: -- 4458381 Public Sector Enh
9613:
9633: l_rec_acct_attrs.array_char_value(7) := p_source_25;
9634: l_rec_acct_attrs.array_acct_attr_code(8) := 'TAX_LINE_REF_ID';
9635: l_rec_acct_attrs.array_num_value(8) := p_source_45;
9636:
9637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9639:
9640: ---------------------------------------------------------------------------------------------------------------
9641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9634: l_rec_acct_attrs.array_acct_attr_code(8) := 'TAX_LINE_REF_ID';
9635: l_rec_acct_attrs.array_num_value(8) := p_source_45;
9636:
9637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9639:
9640: ---------------------------------------------------------------------------------------------------------------
9641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9642: ---------------------------------------------------------------------------------------------------------------
9637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9639:
9640: ---------------------------------------------------------------------------------------------------------------
9641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9642: ---------------------------------------------------------------------------------------------------------------
9643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9644:
9645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9639:
9640: ---------------------------------------------------------------------------------------------------------------
9641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9642: ---------------------------------------------------------------------------------------------------------------
9643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9644:
9645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9647:
9641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9642: ---------------------------------------------------------------------------------------------------------------
9643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9644:
9645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9647:
9648: IF xla_accounting_cache_pkg.GetValueChar
9649: (p_source_code => 'LEDGER_CATEGORY_CODE'
9642: ---------------------------------------------------------------------------------------------------------------
9643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9644:
9645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9647:
9648: IF xla_accounting_cache_pkg.GetValueChar
9649: (p_source_code => 'LEDGER_CATEGORY_CODE'
9650: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
9653: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
9654: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
9655: )
9656: THEN
9657: xla_ae_lines_pkg.BflowUpgEntry
9658: (p_business_method_code => l_bflow_method_code
9659: ,p_business_class_code => l_bflow_class_code
9660: ,p_balance_type => l_balance_type_code);
9661: ELSE
9693: , x_value_type_code => l_adr_value_type_code
9694: , p_side => 'CREDIT'
9695: );
9696:
9697: xla_ae_lines_pkg.set_ccid(
9698: p_code_combination_id => l_ccid
9699: , p_value_type_code => l_adr_value_type_code
9700: , p_transaction_coa_id => l_adr_transaction_coa_id
9701: , p_accounting_coa_id => l_adr_accounting_coa_id
9719: , x_value_type_code => l_adr_value_type_code
9720: , p_side => 'DEBIT'
9721: );
9722:
9723: xla_ae_lines_pkg.set_ccid(
9724: p_code_combination_id => l_ccid
9725: , p_value_type_code => l_adr_value_type_code
9726: , p_transaction_coa_id => l_adr_transaction_coa_id
9727: , p_accounting_coa_id => l_adr_accounting_coa_id
9755: xla_accounting_err_pkg.build_message
9756: (p_appli_s_name => 'XLA'
9757: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
9758: ,p_token_1 => 'LINE_NUMBER'
9759: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
9760: ,p_token_2 => 'LINE_TYPE_NAME'
9761: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
9762: l_component_type
9763: ,l_component_code
9791: --
9792: --
9793: ------------------------------------------------------------------------------------------------
9794: -- 4219869 Business Flow
9795: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9796: -- Prior Entry. Currently, the following code is always generated.
9797: ------------------------------------------------------------------------------------------------
9798: XLA_AE_LINES_PKG.ValidateCurrentLine;
9799:
9794: -- 4219869 Business Flow
9795: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9796: -- Prior Entry. Currently, the following code is always generated.
9797: ------------------------------------------------------------------------------------------------
9798: XLA_AE_LINES_PKG.ValidateCurrentLine;
9799:
9800: ------------------------------------------------------------------------------------
9801: -- 4219869 Business Flow
9802: -- Populated credit and debit amounts -- Need to generate this within IF
9800: ------------------------------------------------------------------------------------
9801: -- 4219869 Business Flow
9802: -- Populated credit and debit amounts -- Need to generate this within IF
9803: ------------------------------------------------------------------------------------
9804: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9805:
9806: ----------------------------------------------------------------------------------
9807: -- 4219869 Business Flow
9808: -- Update journal entry status -- Need to generate this within IF
9832: -- To allow MPA report to determine if it should generate report process
9833: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9834: ------------------------------------------------------------------------------------------
9835:
9836: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9837: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9838: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9839: -- call ADRs
9840: -- Bug 4922099
9833: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9834: ------------------------------------------------------------------------------------------
9835:
9836: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9837: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9838: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9839: -- call ADRs
9840: -- Bug 4922099
9841: --
9857: , x_value_type_code => l_adr_value_type_code
9858: , p_side => 'CREDIT'
9859: );
9860:
9861: xla_ae_lines_pkg.set_ccid(
9862: p_code_combination_id => l_ccid
9863: , p_value_type_code => l_adr_value_type_code
9864: , p_transaction_coa_id => l_adr_transaction_coa_id
9865: , p_accounting_coa_id => l_adr_accounting_coa_id
9883: , x_value_type_code => l_adr_value_type_code
9884: , p_side => 'DEBIT'
9885: );
9886:
9887: xla_ae_lines_pkg.set_ccid(
9888: p_code_combination_id => l_ccid
9889: , p_value_type_code => l_adr_value_type_code
9890: , p_transaction_coa_id => l_adr_transaction_coa_id
9891: , p_accounting_coa_id => l_adr_accounting_coa_id
9906:
9907: --
9908: -- Update the line information that should be overwritten
9909: --
9910: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9911: p_header_num => 1);
9912: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9913:
9914: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9908: -- Update the line information that should be overwritten
9909: --
9910: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9911: p_header_num => 1);
9912: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9913:
9914: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9915:
9916: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9910: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9911: p_header_num => 1);
9912: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9913:
9914: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9915:
9916: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9917: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9918: END IF;
9913:
9914: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9915:
9916: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9917: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9918: END IF;
9919:
9920: --
9921: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9920: --
9921: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9922: --
9923: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
9924: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
9925: ELSE
9926: ---------------------------------------------------------------------------------------------------
9927: -- 4262811a Switch Sign
9928: ---------------------------------------------------------------------------------------------------
9925: ELSE
9926: ---------------------------------------------------------------------------------------------------
9927: -- 4262811a Switch Sign
9928: ---------------------------------------------------------------------------------------------------
9929: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9926: ---------------------------------------------------------------------------------------------------
9927: -- 4262811a Switch Sign
9928: ---------------------------------------------------------------------------------------------------
9929: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9934: -- 5132302
9927: -- 4262811a Switch Sign
9928: ---------------------------------------------------------------------------------------------------
9929: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9934: -- 5132302
9935: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9928: ---------------------------------------------------------------------------------------------------
9929: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9934: -- 5132302
9935: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9936: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9929: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9934: -- 5132302
9935: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9936: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9937:
9931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9934: -- 5132302
9935: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9936: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9937:
9938: END IF;
9939:
9932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9934: -- 5132302
9935: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9936: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9937:
9938: END IF;
9939:
9940: -- 4955764
9937:
9938: END IF;
9939:
9940: -- 4955764
9941: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9942: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9943:
9944:
9945: XLA_AE_LINES_PKG.ValidateCurrentLine;
9941: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9942: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9943:
9944:
9945: XLA_AE_LINES_PKG.ValidateCurrentLine;
9946: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9947:
9948: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9949: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9942: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9943:
9944:
9945: XLA_AE_LINES_PKG.ValidateCurrentLine;
9946: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9947:
9948: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9949: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9950: ,p_balance_type_code => l_balance_type_code);
10084: --
10085: -- bulk performance
10086: --
10087: l_balance_type_code VARCHAR2(1);
10088: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
10089: l_log_module VARCHAR2(240);
10090:
10091: --
10092: -- Upgrade strategy
10152: ') = 'ROUND'
10153: THEN
10154:
10155: --
10156: XLA_AE_LINES_PKG.SetNewLine;
10157:
10158: p_balance_type_code := l_balance_type_code;
10159: -- set the flag so later we will know whether the gain loss line needs to be created
10160:
10164:
10165: --
10166: -- bulk performance
10167: --
10168: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
10169: p_header_num => 0); -- 4262811
10170: --
10171: -- set accounting line options
10172: --
10169: p_header_num => 0); -- 4262811
10170: --
10171: -- set accounting line options
10172: --
10173: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
10174: p_natural_side_code => 'C'
10175: , p_gain_or_loss_flag => 'N'
10176: , p_gl_transfer_mode_code => 'S'
10177: , p_acct_entry_type_code => 'A'
10183: --
10184: --
10185: -- set accounting line type info
10186: --
10187: xla_ae_lines_pkg.SetAcctLineType
10188: (p_component_type => l_component_type
10189: ,p_event_type_code => l_event_type_code
10190: ,p_line_definition_owner_code => l_line_definition_owner_code
10191: ,p_line_definition_code => l_line_definition_code
10197: ,p_event_class_code => l_event_class_code);
10198: --
10199: -- set accounting class
10200: --
10201: xla_ae_lines_pkg.SetAcctClass(
10202: p_accounting_class_code => 'ROUNDING'
10203: , p_ae_header_id => l_ae_header_id
10204: );
10205:
10205:
10206: --
10207: -- set rounding class
10208: --
10209: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10210: 'RECEIVABLE';
10211:
10212: --
10213: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10209: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10210: 'RECEIVABLE';
10211:
10212: --
10213: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10214: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10215: --
10216: -- bulk performance
10217: --
10210: 'RECEIVABLE';
10211:
10212: --
10213: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10214: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10215: --
10216: -- bulk performance
10217: --
10218: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10214: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10215: --
10216: -- bulk performance
10217: --
10218: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10219:
10220: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10221: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10222:
10216: -- bulk performance
10217: --
10218: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10219:
10220: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10221: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10222:
10223: -- 4955764
10224: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10220: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10221: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10222:
10223: -- 4955764
10224: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10225: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
10226:
10227: -- 4458381 Public Sector Enh
10228:
10258: l_rec_acct_attrs.array_char_value(12) := p_source_25;
10259: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
10260: l_rec_acct_attrs.array_num_value(13) := p_source_45;
10261:
10262: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10263: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10264:
10265: ---------------------------------------------------------------------------------------------------------------
10266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10259: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
10260: l_rec_acct_attrs.array_num_value(13) := p_source_45;
10261:
10262: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10263: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10264:
10265: ---------------------------------------------------------------------------------------------------------------
10266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10267: ---------------------------------------------------------------------------------------------------------------
10262: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10263: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10264:
10265: ---------------------------------------------------------------------------------------------------------------
10266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10267: ---------------------------------------------------------------------------------------------------------------
10268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10269:
10270: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10264:
10265: ---------------------------------------------------------------------------------------------------------------
10266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10267: ---------------------------------------------------------------------------------------------------------------
10268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10269:
10270: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10271: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10272:
10266: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10267: ---------------------------------------------------------------------------------------------------------------
10268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10269:
10270: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10271: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10272:
10273: IF xla_accounting_cache_pkg.GetValueChar
10274: (p_source_code => 'LEDGER_CATEGORY_CODE'
10267: ---------------------------------------------------------------------------------------------------------------
10268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10269:
10270: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10271: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10272:
10273: IF xla_accounting_cache_pkg.GetValueChar
10274: (p_source_code => 'LEDGER_CATEGORY_CODE'
10275: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
10278: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
10279: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
10280: )
10281: THEN
10282: xla_ae_lines_pkg.BflowUpgEntry
10283: (p_business_method_code => l_bflow_method_code
10284: ,p_business_class_code => l_bflow_class_code
10285: ,p_balance_type => l_balance_type_code);
10286: ELSE
10318: , x_value_type_code => l_adr_value_type_code
10319: , p_side => 'NA'
10320: );
10321:
10322: xla_ae_lines_pkg.set_ccid(
10323: p_code_combination_id => l_ccid
10324: , p_value_type_code => l_adr_value_type_code
10325: , p_transaction_coa_id => l_adr_transaction_coa_id
10326: , p_accounting_coa_id => l_adr_accounting_coa_id
10354: xla_accounting_err_pkg.build_message
10355: (p_appli_s_name => 'XLA'
10356: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
10357: ,p_token_1 => 'LINE_NUMBER'
10358: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
10359: ,p_token_2 => 'LINE_TYPE_NAME'
10360: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
10361: l_component_type
10362: ,l_component_code
10390: --
10391: --
10392: ------------------------------------------------------------------------------------------------
10393: -- 4219869 Business Flow
10394: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10395: -- Prior Entry. Currently, the following code is always generated.
10396: ------------------------------------------------------------------------------------------------
10397: XLA_AE_LINES_PKG.ValidateCurrentLine;
10398:
10393: -- 4219869 Business Flow
10394: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10395: -- Prior Entry. Currently, the following code is always generated.
10396: ------------------------------------------------------------------------------------------------
10397: XLA_AE_LINES_PKG.ValidateCurrentLine;
10398:
10399: ------------------------------------------------------------------------------------
10400: -- 4219869 Business Flow
10401: -- Populated credit and debit amounts -- Need to generate this within IF
10399: ------------------------------------------------------------------------------------
10400: -- 4219869 Business Flow
10401: -- Populated credit and debit amounts -- Need to generate this within IF
10402: ------------------------------------------------------------------------------------
10403: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10404:
10405: ----------------------------------------------------------------------------------
10406: -- 4219869 Business Flow
10407: -- Update journal entry status -- Need to generate this within IF
10431: -- To allow MPA report to determine if it should generate report process
10432: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10433: ------------------------------------------------------------------------------------------
10434:
10435: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10436: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10437: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10438: -- call ADRs
10439: -- Bug 4922099
10432: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10433: ------------------------------------------------------------------------------------------
10434:
10435: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10436: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10437: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10438: -- call ADRs
10439: -- Bug 4922099
10440: --
10456: , x_value_type_code => l_adr_value_type_code
10457: , p_side => 'NA'
10458: );
10459:
10460: xla_ae_lines_pkg.set_ccid(
10461: p_code_combination_id => l_ccid
10462: , p_value_type_code => l_adr_value_type_code
10463: , p_transaction_coa_id => l_adr_transaction_coa_id
10464: , p_accounting_coa_id => l_adr_accounting_coa_id
10479:
10480: --
10481: -- Update the line information that should be overwritten
10482: --
10483: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10484: p_header_num => 1);
10485: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10486:
10487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10481: -- Update the line information that should be overwritten
10482: --
10483: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10484: p_header_num => 1);
10485: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10486:
10487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10488:
10489: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10483: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10484: p_header_num => 1);
10485: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10486:
10487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10488:
10489: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10490: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10491: END IF;
10486:
10487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10488:
10489: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10490: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10491: END IF;
10492:
10493: --
10494: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10493: --
10494: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10495: --
10496: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
10497: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
10498: ELSE
10499: ---------------------------------------------------------------------------------------------------
10500: -- 4262811a Switch Sign
10501: ---------------------------------------------------------------------------------------------------
10498: ELSE
10499: ---------------------------------------------------------------------------------------------------
10500: -- 4262811a Switch Sign
10501: ---------------------------------------------------------------------------------------------------
10502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10499: ---------------------------------------------------------------------------------------------------
10500: -- 4262811a Switch Sign
10501: ---------------------------------------------------------------------------------------------------
10502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10507: -- 5132302
10500: -- 4262811a Switch Sign
10501: ---------------------------------------------------------------------------------------------------
10502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10507: -- 5132302
10508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10501: ---------------------------------------------------------------------------------------------------
10502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10507: -- 5132302
10508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10507: -- 5132302
10508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10510:
10504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10507: -- 5132302
10508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10510:
10511: END IF;
10512:
10505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10507: -- 5132302
10508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10510:
10511: END IF;
10512:
10513: -- 4955764
10510:
10511: END IF;
10512:
10513: -- 4955764
10514: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10515: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10516:
10517:
10518: XLA_AE_LINES_PKG.ValidateCurrentLine;
10514: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10515: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10516:
10517:
10518: XLA_AE_LINES_PKG.ValidateCurrentLine;
10519: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10520:
10521: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10522: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10515: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10516:
10517:
10518: XLA_AE_LINES_PKG.ValidateCurrentLine;
10519: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10520:
10521: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10522: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10523: ,p_balance_type_code => l_balance_type_code);
10658: --
10659: -- bulk performance
10660: --
10661: l_balance_type_code VARCHAR2(1);
10662: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
10663: l_log_module VARCHAR2(240);
10664:
10665: --
10666: -- Upgrade strategy
10726: ') = 'UNBILL'
10727: THEN
10728:
10729: --
10730: XLA_AE_LINES_PKG.SetNewLine;
10731:
10732: p_balance_type_code := l_balance_type_code;
10733: -- set the flag so later we will know whether the gain loss line needs to be created
10734:
10738:
10739: --
10740: -- bulk performance
10741: --
10742: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
10743: p_header_num => 0); -- 4262811
10744: --
10745: -- set accounting line options
10746: --
10743: p_header_num => 0); -- 4262811
10744: --
10745: -- set accounting line options
10746: --
10747: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
10748: p_natural_side_code => 'C'
10749: , p_gain_or_loss_flag => 'N'
10750: , p_gl_transfer_mode_code => 'S'
10751: , p_acct_entry_type_code => 'A'
10757: --
10758: --
10759: -- set accounting line type info
10760: --
10761: xla_ae_lines_pkg.SetAcctLineType
10762: (p_component_type => l_component_type
10763: ,p_event_type_code => l_event_type_code
10764: ,p_line_definition_owner_code => l_line_definition_owner_code
10765: ,p_line_definition_code => l_line_definition_code
10771: ,p_event_class_code => l_event_class_code);
10772: --
10773: -- set accounting class
10774: --
10775: xla_ae_lines_pkg.SetAcctClass(
10776: p_accounting_class_code => 'UNBILL'
10777: , p_ae_header_id => l_ae_header_id
10778: );
10779:
10779:
10780: --
10781: -- set rounding class
10782: --
10783: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10784: 'RECEIVABLE';
10785:
10786: --
10787: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10783: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10784: 'RECEIVABLE';
10785:
10786: --
10787: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10788: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10789: --
10790: -- bulk performance
10791: --
10784: 'RECEIVABLE';
10785:
10786: --
10787: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10788: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10789: --
10790: -- bulk performance
10791: --
10792: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10788: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10789: --
10790: -- bulk performance
10791: --
10792: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10793:
10794: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10795: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10796:
10790: -- bulk performance
10791: --
10792: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10793:
10794: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10795: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10796:
10797: -- 4955764
10798: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10794: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10795: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10796:
10797: -- 4955764
10798: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10799: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
10800:
10801: -- 4458381 Public Sector Enh
10802:
10832: l_rec_acct_attrs.array_char_value(12) := p_source_25;
10833: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
10834: l_rec_acct_attrs.array_num_value(13) := p_source_45;
10835:
10836: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10837: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10838:
10839: ---------------------------------------------------------------------------------------------------------------
10840: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10833: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
10834: l_rec_acct_attrs.array_num_value(13) := p_source_45;
10835:
10836: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10837: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10838:
10839: ---------------------------------------------------------------------------------------------------------------
10840: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10841: ---------------------------------------------------------------------------------------------------------------
10836: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10837: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10838:
10839: ---------------------------------------------------------------------------------------------------------------
10840: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10841: ---------------------------------------------------------------------------------------------------------------
10842: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10843:
10844: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10838:
10839: ---------------------------------------------------------------------------------------------------------------
10840: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10841: ---------------------------------------------------------------------------------------------------------------
10842: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10843:
10844: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10845: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10846:
10840: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10841: ---------------------------------------------------------------------------------------------------------------
10842: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10843:
10844: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10845: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10846:
10847: IF xla_accounting_cache_pkg.GetValueChar
10848: (p_source_code => 'LEDGER_CATEGORY_CODE'
10841: ---------------------------------------------------------------------------------------------------------------
10842: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10843:
10844: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10845: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10846:
10847: IF xla_accounting_cache_pkg.GetValueChar
10848: (p_source_code => 'LEDGER_CATEGORY_CODE'
10849: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
10852: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
10853: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
10854: )
10855: THEN
10856: xla_ae_lines_pkg.BflowUpgEntry
10857: (p_business_method_code => l_bflow_method_code
10858: ,p_business_class_code => l_bflow_class_code
10859: ,p_balance_type => l_balance_type_code);
10860: ELSE
10892: , x_value_type_code => l_adr_value_type_code
10893: , p_side => 'NA'
10894: );
10895:
10896: xla_ae_lines_pkg.set_ccid(
10897: p_code_combination_id => l_ccid
10898: , p_value_type_code => l_adr_value_type_code
10899: , p_transaction_coa_id => l_adr_transaction_coa_id
10900: , p_accounting_coa_id => l_adr_accounting_coa_id
10928: xla_accounting_err_pkg.build_message
10929: (p_appli_s_name => 'XLA'
10930: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
10931: ,p_token_1 => 'LINE_NUMBER'
10932: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
10933: ,p_token_2 => 'LINE_TYPE_NAME'
10934: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
10935: l_component_type
10936: ,l_component_code
10964: --
10965: --
10966: ------------------------------------------------------------------------------------------------
10967: -- 4219869 Business Flow
10968: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10969: -- Prior Entry. Currently, the following code is always generated.
10970: ------------------------------------------------------------------------------------------------
10971: XLA_AE_LINES_PKG.ValidateCurrentLine;
10972:
10967: -- 4219869 Business Flow
10968: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10969: -- Prior Entry. Currently, the following code is always generated.
10970: ------------------------------------------------------------------------------------------------
10971: XLA_AE_LINES_PKG.ValidateCurrentLine;
10972:
10973: ------------------------------------------------------------------------------------
10974: -- 4219869 Business Flow
10975: -- Populated credit and debit amounts -- Need to generate this within IF
10973: ------------------------------------------------------------------------------------
10974: -- 4219869 Business Flow
10975: -- Populated credit and debit amounts -- Need to generate this within IF
10976: ------------------------------------------------------------------------------------
10977: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10978:
10979: ----------------------------------------------------------------------------------
10980: -- 4219869 Business Flow
10981: -- Update journal entry status -- Need to generate this within IF
11005: -- To allow MPA report to determine if it should generate report process
11006: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11007: ------------------------------------------------------------------------------------------
11008:
11009: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11010: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11011: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11012: -- call ADRs
11013: -- Bug 4922099
11006: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11007: ------------------------------------------------------------------------------------------
11008:
11009: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11010: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11011: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11012: -- call ADRs
11013: -- Bug 4922099
11014: --
11030: , x_value_type_code => l_adr_value_type_code
11031: , p_side => 'NA'
11032: );
11033:
11034: xla_ae_lines_pkg.set_ccid(
11035: p_code_combination_id => l_ccid
11036: , p_value_type_code => l_adr_value_type_code
11037: , p_transaction_coa_id => l_adr_transaction_coa_id
11038: , p_accounting_coa_id => l_adr_accounting_coa_id
11053:
11054: --
11055: -- Update the line information that should be overwritten
11056: --
11057: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11058: p_header_num => 1);
11059: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11060:
11061: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11055: -- Update the line information that should be overwritten
11056: --
11057: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11058: p_header_num => 1);
11059: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11060:
11061: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11062:
11063: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11057: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11058: p_header_num => 1);
11059: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11060:
11061: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11062:
11063: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11064: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11065: END IF;
11060:
11061: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11062:
11063: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11064: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11065: END IF;
11066:
11067: --
11068: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11067: --
11068: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11069: --
11070: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
11071: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
11072: ELSE
11073: ---------------------------------------------------------------------------------------------------
11074: -- 4262811a Switch Sign
11075: ---------------------------------------------------------------------------------------------------
11072: ELSE
11073: ---------------------------------------------------------------------------------------------------
11074: -- 4262811a Switch Sign
11075: ---------------------------------------------------------------------------------------------------
11076: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11077: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11079: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11073: ---------------------------------------------------------------------------------------------------
11074: -- 4262811a Switch Sign
11075: ---------------------------------------------------------------------------------------------------
11076: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11077: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11079: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11081: -- 5132302
11074: -- 4262811a Switch Sign
11075: ---------------------------------------------------------------------------------------------------
11076: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11077: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11079: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11081: -- 5132302
11082: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11075: ---------------------------------------------------------------------------------------------------
11076: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11077: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11079: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11081: -- 5132302
11082: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11083: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11076: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11077: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11079: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11081: -- 5132302
11082: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11083: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11084:
11078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11079: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11081: -- 5132302
11082: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11083: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11084:
11085: END IF;
11086:
11079: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11080: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11081: -- 5132302
11082: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11083: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11084:
11085: END IF;
11086:
11087: -- 4955764
11084:
11085: END IF;
11086:
11087: -- 4955764
11088: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11089: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11090:
11091:
11092: XLA_AE_LINES_PKG.ValidateCurrentLine;
11088: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11089: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11090:
11091:
11092: XLA_AE_LINES_PKG.ValidateCurrentLine;
11093: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11094:
11095: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11096: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11089: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11090:
11091:
11092: XLA_AE_LINES_PKG.ValidateCurrentLine;
11093: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11094:
11095: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11096: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11097: ,p_balance_type_code => l_balance_type_code);
11232: --
11233: -- bulk performance
11234: --
11235: l_balance_type_code VARCHAR2(1);
11236: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
11237: l_log_module VARCHAR2(240);
11238:
11239: --
11240: -- Upgrade strategy
11300: ') = 'UNEARN'
11301: THEN
11302:
11303: --
11304: XLA_AE_LINES_PKG.SetNewLine;
11305:
11306: p_balance_type_code := l_balance_type_code;
11307: -- set the flag so later we will know whether the gain loss line needs to be created
11308:
11312:
11313: --
11314: -- bulk performance
11315: --
11316: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
11317: p_header_num => 0); -- 4262811
11318: --
11319: -- set accounting line options
11320: --
11317: p_header_num => 0); -- 4262811
11318: --
11319: -- set accounting line options
11320: --
11321: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
11322: p_natural_side_code => 'C'
11323: , p_gain_or_loss_flag => 'N'
11324: , p_gl_transfer_mode_code => 'S'
11325: , p_acct_entry_type_code => 'A'
11331: --
11332: --
11333: -- set accounting line type info
11334: --
11335: xla_ae_lines_pkg.SetAcctLineType
11336: (p_component_type => l_component_type
11337: ,p_event_type_code => l_event_type_code
11338: ,p_line_definition_owner_code => l_line_definition_owner_code
11339: ,p_line_definition_code => l_line_definition_code
11345: ,p_event_class_code => l_event_class_code);
11346: --
11347: -- set accounting class
11348: --
11349: xla_ae_lines_pkg.SetAcctClass(
11350: p_accounting_class_code => 'UNEARNED_REVENUE'
11351: , p_ae_header_id => l_ae_header_id
11352: );
11353:
11353:
11354: --
11355: -- set rounding class
11356: --
11357: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11358: 'RECEIVABLE';
11359:
11360: --
11361: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11357: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11358: 'RECEIVABLE';
11359:
11360: --
11361: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11362: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11363: --
11364: -- bulk performance
11365: --
11358: 'RECEIVABLE';
11359:
11360: --
11361: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11362: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11363: --
11364: -- bulk performance
11365: --
11366: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11362: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11363: --
11364: -- bulk performance
11365: --
11366: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11367:
11368: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11369: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11370:
11364: -- bulk performance
11365: --
11366: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11367:
11368: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11369: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11370:
11371: -- 4955764
11372: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11368: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11369: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11370:
11371: -- 4955764
11372: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11373: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
11374:
11375: -- 4458381 Public Sector Enh
11376:
11406: l_rec_acct_attrs.array_char_value(12) := p_source_25;
11407: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
11408: l_rec_acct_attrs.array_num_value(13) := p_source_45;
11409:
11410: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11411: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11412:
11413: ---------------------------------------------------------------------------------------------------------------
11414: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11407: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
11408: l_rec_acct_attrs.array_num_value(13) := p_source_45;
11409:
11410: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11411: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11412:
11413: ---------------------------------------------------------------------------------------------------------------
11414: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11415: ---------------------------------------------------------------------------------------------------------------
11410: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11411: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11412:
11413: ---------------------------------------------------------------------------------------------------------------
11414: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11415: ---------------------------------------------------------------------------------------------------------------
11416: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11417:
11418: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11412:
11413: ---------------------------------------------------------------------------------------------------------------
11414: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11415: ---------------------------------------------------------------------------------------------------------------
11416: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11417:
11418: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11419: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11420:
11414: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11415: ---------------------------------------------------------------------------------------------------------------
11416: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11417:
11418: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11419: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11420:
11421: IF xla_accounting_cache_pkg.GetValueChar
11422: (p_source_code => 'LEDGER_CATEGORY_CODE'
11415: ---------------------------------------------------------------------------------------------------------------
11416: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11417:
11418: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11419: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11420:
11421: IF xla_accounting_cache_pkg.GetValueChar
11422: (p_source_code => 'LEDGER_CATEGORY_CODE'
11423: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
11426: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
11427: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
11428: )
11429: THEN
11430: xla_ae_lines_pkg.BflowUpgEntry
11431: (p_business_method_code => l_bflow_method_code
11432: ,p_business_class_code => l_bflow_class_code
11433: ,p_balance_type => l_balance_type_code);
11434: ELSE
11466: , x_value_type_code => l_adr_value_type_code
11467: , p_side => 'NA'
11468: );
11469:
11470: xla_ae_lines_pkg.set_ccid(
11471: p_code_combination_id => l_ccid
11472: , p_value_type_code => l_adr_value_type_code
11473: , p_transaction_coa_id => l_adr_transaction_coa_id
11474: , p_accounting_coa_id => l_adr_accounting_coa_id
11502: xla_accounting_err_pkg.build_message
11503: (p_appli_s_name => 'XLA'
11504: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
11505: ,p_token_1 => 'LINE_NUMBER'
11506: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
11507: ,p_token_2 => 'LINE_TYPE_NAME'
11508: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
11509: l_component_type
11510: ,l_component_code
11538: --
11539: --
11540: ------------------------------------------------------------------------------------------------
11541: -- 4219869 Business Flow
11542: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11543: -- Prior Entry. Currently, the following code is always generated.
11544: ------------------------------------------------------------------------------------------------
11545: XLA_AE_LINES_PKG.ValidateCurrentLine;
11546:
11541: -- 4219869 Business Flow
11542: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11543: -- Prior Entry. Currently, the following code is always generated.
11544: ------------------------------------------------------------------------------------------------
11545: XLA_AE_LINES_PKG.ValidateCurrentLine;
11546:
11547: ------------------------------------------------------------------------------------
11548: -- 4219869 Business Flow
11549: -- Populated credit and debit amounts -- Need to generate this within IF
11547: ------------------------------------------------------------------------------------
11548: -- 4219869 Business Flow
11549: -- Populated credit and debit amounts -- Need to generate this within IF
11550: ------------------------------------------------------------------------------------
11551: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11552:
11553: ----------------------------------------------------------------------------------
11554: -- 4219869 Business Flow
11555: -- Update journal entry status -- Need to generate this within IF
11579: -- To allow MPA report to determine if it should generate report process
11580: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11581: ------------------------------------------------------------------------------------------
11582:
11583: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11584: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11585: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11586: -- call ADRs
11587: -- Bug 4922099
11580: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11581: ------------------------------------------------------------------------------------------
11582:
11583: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11584: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11585: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11586: -- call ADRs
11587: -- Bug 4922099
11588: --
11604: , x_value_type_code => l_adr_value_type_code
11605: , p_side => 'NA'
11606: );
11607:
11608: xla_ae_lines_pkg.set_ccid(
11609: p_code_combination_id => l_ccid
11610: , p_value_type_code => l_adr_value_type_code
11611: , p_transaction_coa_id => l_adr_transaction_coa_id
11612: , p_accounting_coa_id => l_adr_accounting_coa_id
11627:
11628: --
11629: -- Update the line information that should be overwritten
11630: --
11631: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11632: p_header_num => 1);
11633: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11634:
11635: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11629: -- Update the line information that should be overwritten
11630: --
11631: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11632: p_header_num => 1);
11633: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11634:
11635: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11636:
11637: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11631: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11632: p_header_num => 1);
11633: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11634:
11635: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11636:
11637: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11638: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11639: END IF;
11634:
11635: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11636:
11637: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11638: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11639: END IF;
11640:
11641: --
11642: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11641: --
11642: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11643: --
11644: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
11645: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
11646: ELSE
11647: ---------------------------------------------------------------------------------------------------
11648: -- 4262811a Switch Sign
11649: ---------------------------------------------------------------------------------------------------
11646: ELSE
11647: ---------------------------------------------------------------------------------------------------
11648: -- 4262811a Switch Sign
11649: ---------------------------------------------------------------------------------------------------
11650: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11651: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11653: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11647: ---------------------------------------------------------------------------------------------------
11648: -- 4262811a Switch Sign
11649: ---------------------------------------------------------------------------------------------------
11650: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11651: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11653: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11655: -- 5132302
11648: -- 4262811a Switch Sign
11649: ---------------------------------------------------------------------------------------------------
11650: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11651: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11653: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11655: -- 5132302
11656: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11649: ---------------------------------------------------------------------------------------------------
11650: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11651: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11653: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11655: -- 5132302
11656: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11650: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11651: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11653: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11655: -- 5132302
11656: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11658:
11652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11653: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11655: -- 5132302
11656: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11658:
11659: END IF;
11660:
11653: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11655: -- 5132302
11656: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11658:
11659: END IF;
11660:
11661: -- 4955764
11658:
11659: END IF;
11660:
11661: -- 4955764
11662: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11663: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11664:
11665:
11666: XLA_AE_LINES_PKG.ValidateCurrentLine;
11662: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11663: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11664:
11665:
11666: XLA_AE_LINES_PKG.ValidateCurrentLine;
11667: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11668:
11669: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11670: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11663: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11664:
11665:
11666: XLA_AE_LINES_PKG.ValidateCurrentLine;
11667: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11668:
11669: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11670: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11671: ,p_balance_type_code => l_balance_type_code);
11802: --
11803: -- bulk performance
11804: --
11805: l_balance_type_code VARCHAR2(1);
11806: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
11807: l_log_module VARCHAR2(240);
11808:
11809: --
11810: -- Upgrade strategy
11870: ') = 'REC'
11871: THEN
11872:
11873: --
11874: XLA_AE_LINES_PKG.SetNewLine;
11875:
11876: p_balance_type_code := l_balance_type_code;
11877: -- set the flag so later we will know whether the gain loss line needs to be created
11878:
11882:
11883: --
11884: -- bulk performance
11885: --
11886: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
11887: p_header_num => 0); -- 4262811
11888: --
11889: -- set accounting line options
11890: --
11887: p_header_num => 0); -- 4262811
11888: --
11889: -- set accounting line options
11890: --
11891: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
11892: p_natural_side_code => 'D'
11893: , p_gain_or_loss_flag => 'N'
11894: , p_gl_transfer_mode_code => 'S'
11895: , p_acct_entry_type_code => 'A'
11901: --
11902: --
11903: -- set accounting line type info
11904: --
11905: xla_ae_lines_pkg.SetAcctLineType
11906: (p_component_type => l_component_type
11907: ,p_event_type_code => l_event_type_code
11908: ,p_line_definition_owner_code => l_line_definition_owner_code
11909: ,p_line_definition_code => l_line_definition_code
11915: ,p_event_class_code => l_event_class_code);
11916: --
11917: -- set accounting class
11918: --
11919: xla_ae_lines_pkg.SetAcctClass(
11920: p_accounting_class_code => 'RECEIVABLE'
11921: , p_ae_header_id => l_ae_header_id
11922: );
11923:
11923:
11924: --
11925: -- set rounding class
11926: --
11927: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11928: 'RECEIVABLE';
11929:
11930: --
11931: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11927: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11928: 'RECEIVABLE';
11929:
11930: --
11931: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11932: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11933: --
11934: -- bulk performance
11935: --
11928: 'RECEIVABLE';
11929:
11930: --
11931: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11932: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11933: --
11934: -- bulk performance
11935: --
11936: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11932: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11933: --
11934: -- bulk performance
11935: --
11936: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11937:
11938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11939: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11940:
11934: -- bulk performance
11935: --
11936: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11937:
11938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11939: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11940:
11941: -- 4955764
11942: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11938: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11939: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
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('header_index'));
11944:
11945: -- 4458381 Public Sector Enh
11946:
11972: l_rec_acct_attrs.array_num_value(10) := p_source_24;
11973: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
11974: l_rec_acct_attrs.array_char_value(11) := p_source_25;
11975:
11976: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11977: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11978:
11979: ---------------------------------------------------------------------------------------------------------------
11980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11973: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
11974: l_rec_acct_attrs.array_char_value(11) := p_source_25;
11975:
11976: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11977: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11978:
11979: ---------------------------------------------------------------------------------------------------------------
11980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11981: ---------------------------------------------------------------------------------------------------------------
11976: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11977: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11978:
11979: ---------------------------------------------------------------------------------------------------------------
11980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11981: ---------------------------------------------------------------------------------------------------------------
11982: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11983:
11984: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11978:
11979: ---------------------------------------------------------------------------------------------------------------
11980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11981: ---------------------------------------------------------------------------------------------------------------
11982: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11983:
11984: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11985: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11986:
11980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11981: ---------------------------------------------------------------------------------------------------------------
11982: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11983:
11984: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11985: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11986:
11987: IF xla_accounting_cache_pkg.GetValueChar
11988: (p_source_code => 'LEDGER_CATEGORY_CODE'
11981: ---------------------------------------------------------------------------------------------------------------
11982: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11983:
11984: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11985: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11986:
11987: IF xla_accounting_cache_pkg.GetValueChar
11988: (p_source_code => 'LEDGER_CATEGORY_CODE'
11989: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
11992: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
11993: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
11994: )
11995: THEN
11996: xla_ae_lines_pkg.BflowUpgEntry
11997: (p_business_method_code => l_bflow_method_code
11998: ,p_business_class_code => l_bflow_class_code
11999: ,p_balance_type => l_balance_type_code);
12000: ELSE
12032: , x_value_type_code => l_adr_value_type_code
12033: , p_side => 'NA'
12034: );
12035:
12036: xla_ae_lines_pkg.set_ccid(
12037: p_code_combination_id => l_ccid
12038: , p_value_type_code => l_adr_value_type_code
12039: , p_transaction_coa_id => l_adr_transaction_coa_id
12040: , p_accounting_coa_id => l_adr_accounting_coa_id
12068: xla_accounting_err_pkg.build_message
12069: (p_appli_s_name => 'XLA'
12070: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
12071: ,p_token_1 => 'LINE_NUMBER'
12072: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
12073: ,p_token_2 => 'LINE_TYPE_NAME'
12074: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
12075: l_component_type
12076: ,l_component_code
12104: --
12105: --
12106: ------------------------------------------------------------------------------------------------
12107: -- 4219869 Business Flow
12108: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12109: -- Prior Entry. Currently, the following code is always generated.
12110: ------------------------------------------------------------------------------------------------
12111: XLA_AE_LINES_PKG.ValidateCurrentLine;
12112:
12107: -- 4219869 Business Flow
12108: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12109: -- Prior Entry. Currently, the following code is always generated.
12110: ------------------------------------------------------------------------------------------------
12111: XLA_AE_LINES_PKG.ValidateCurrentLine;
12112:
12113: ------------------------------------------------------------------------------------
12114: -- 4219869 Business Flow
12115: -- Populated credit and debit amounts -- Need to generate this within IF
12113: ------------------------------------------------------------------------------------
12114: -- 4219869 Business Flow
12115: -- Populated credit and debit amounts -- Need to generate this within IF
12116: ------------------------------------------------------------------------------------
12117: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12118:
12119: ----------------------------------------------------------------------------------
12120: -- 4219869 Business Flow
12121: -- Update journal entry status -- Need to generate this within IF
12145: -- To allow MPA report to determine if it should generate report process
12146: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12147: ------------------------------------------------------------------------------------------
12148:
12149: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12150: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12151: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12152: -- call ADRs
12153: -- Bug 4922099
12146: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12147: ------------------------------------------------------------------------------------------
12148:
12149: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12150: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12151: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12152: -- call ADRs
12153: -- Bug 4922099
12154: --
12170: , x_value_type_code => l_adr_value_type_code
12171: , p_side => 'NA'
12172: );
12173:
12174: xla_ae_lines_pkg.set_ccid(
12175: p_code_combination_id => l_ccid
12176: , p_value_type_code => l_adr_value_type_code
12177: , p_transaction_coa_id => l_adr_transaction_coa_id
12178: , p_accounting_coa_id => l_adr_accounting_coa_id
12193:
12194: --
12195: -- Update the line information that should be overwritten
12196: --
12197: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12198: p_header_num => 1);
12199: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12200:
12201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12195: -- Update the line information that should be overwritten
12196: --
12197: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12198: p_header_num => 1);
12199: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12200:
12201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12202:
12203: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12197: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12198: p_header_num => 1);
12199: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12200:
12201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12202:
12203: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12204: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12205: END IF;
12200:
12201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12202:
12203: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12204: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12205: END IF;
12206:
12207: --
12208: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12207: --
12208: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12209: --
12210: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
12211: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
12212: ELSE
12213: ---------------------------------------------------------------------------------------------------
12214: -- 4262811a Switch Sign
12215: ---------------------------------------------------------------------------------------------------
12212: ELSE
12213: ---------------------------------------------------------------------------------------------------
12214: -- 4262811a Switch Sign
12215: ---------------------------------------------------------------------------------------------------
12216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12213: ---------------------------------------------------------------------------------------------------
12214: -- 4262811a Switch Sign
12215: ---------------------------------------------------------------------------------------------------
12216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12221: -- 5132302
12214: -- 4262811a Switch Sign
12215: ---------------------------------------------------------------------------------------------------
12216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12221: -- 5132302
12222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12215: ---------------------------------------------------------------------------------------------------
12216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12221: -- 5132302
12222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12221: -- 5132302
12222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12224:
12218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12221: -- 5132302
12222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12224:
12225: END IF;
12226:
12219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12221: -- 5132302
12222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12224:
12225: END IF;
12226:
12227: -- 4955764
12224:
12225: END IF;
12226:
12227: -- 4955764
12228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12230:
12231:
12232: XLA_AE_LINES_PKG.ValidateCurrentLine;
12228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12230:
12231:
12232: XLA_AE_LINES_PKG.ValidateCurrentLine;
12233: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12234:
12235: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12236: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12230:
12231:
12232: XLA_AE_LINES_PKG.ValidateCurrentLine;
12233: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12234:
12235: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12236: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12237: ,p_balance_type_code => l_balance_type_code);
12368: --
12369: -- bulk performance
12370: --
12371: l_balance_type_code VARCHAR2(1);
12372: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
12373: l_log_module VARCHAR2(240);
12374:
12375: --
12376: -- Upgrade strategy
12436: ') = 'REV'
12437: THEN
12438:
12439: --
12440: XLA_AE_LINES_PKG.SetNewLine;
12441:
12442: p_balance_type_code := l_balance_type_code;
12443: -- set the flag so later we will know whether the gain loss line needs to be created
12444:
12448:
12449: --
12450: -- bulk performance
12451: --
12452: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
12453: p_header_num => 0); -- 4262811
12454: --
12455: -- set accounting line options
12456: --
12453: p_header_num => 0); -- 4262811
12454: --
12455: -- set accounting line options
12456: --
12457: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
12458: p_natural_side_code => 'C'
12459: , p_gain_or_loss_flag => 'N'
12460: , p_gl_transfer_mode_code => 'S'
12461: , p_acct_entry_type_code => 'A'
12467: --
12468: --
12469: -- set accounting line type info
12470: --
12471: xla_ae_lines_pkg.SetAcctLineType
12472: (p_component_type => l_component_type
12473: ,p_event_type_code => l_event_type_code
12474: ,p_line_definition_owner_code => l_line_definition_owner_code
12475: ,p_line_definition_code => l_line_definition_code
12481: ,p_event_class_code => l_event_class_code);
12482: --
12483: -- set accounting class
12484: --
12485: xla_ae_lines_pkg.SetAcctClass(
12486: p_accounting_class_code => 'ACCRUAL'
12487: , p_ae_header_id => l_ae_header_id
12488: );
12489:
12489:
12490: --
12491: -- set rounding class
12492: --
12493: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12494: 'RECEIVABLE';
12495:
12496: --
12497: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12493: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12494: 'RECEIVABLE';
12495:
12496: --
12497: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12498: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12499: --
12500: -- bulk performance
12501: --
12494: 'RECEIVABLE';
12495:
12496: --
12497: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12498: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12499: --
12500: -- bulk performance
12501: --
12502: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12498: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12499: --
12500: -- bulk performance
12501: --
12502: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12503:
12504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12505: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12506:
12500: -- bulk performance
12501: --
12502: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12503:
12504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12505: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12506:
12507: -- 4955764
12508: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12505: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
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('header_index'));
12510:
12511: -- 4458381 Public Sector Enh
12512:
12538: l_rec_acct_attrs.array_num_value(10) := p_source_24;
12539: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
12540: l_rec_acct_attrs.array_char_value(11) := p_source_25;
12541:
12542: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12543: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12544:
12545: ---------------------------------------------------------------------------------------------------------------
12546: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12539: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
12540: l_rec_acct_attrs.array_char_value(11) := p_source_25;
12541:
12542: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12543: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12544:
12545: ---------------------------------------------------------------------------------------------------------------
12546: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12547: ---------------------------------------------------------------------------------------------------------------
12542: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12543: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12544:
12545: ---------------------------------------------------------------------------------------------------------------
12546: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12547: ---------------------------------------------------------------------------------------------------------------
12548: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12549:
12550: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12544:
12545: ---------------------------------------------------------------------------------------------------------------
12546: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12547: ---------------------------------------------------------------------------------------------------------------
12548: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12549:
12550: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12551: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12552:
12546: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12547: ---------------------------------------------------------------------------------------------------------------
12548: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12549:
12550: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12551: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12552:
12553: IF xla_accounting_cache_pkg.GetValueChar
12554: (p_source_code => 'LEDGER_CATEGORY_CODE'
12547: ---------------------------------------------------------------------------------------------------------------
12548: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12549:
12550: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12551: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12552:
12553: IF xla_accounting_cache_pkg.GetValueChar
12554: (p_source_code => 'LEDGER_CATEGORY_CODE'
12555: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
12558: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
12559: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
12560: )
12561: THEN
12562: xla_ae_lines_pkg.BflowUpgEntry
12563: (p_business_method_code => l_bflow_method_code
12564: ,p_business_class_code => l_bflow_class_code
12565: ,p_balance_type => l_balance_type_code);
12566: ELSE
12598: , x_value_type_code => l_adr_value_type_code
12599: , p_side => 'NA'
12600: );
12601:
12602: xla_ae_lines_pkg.set_ccid(
12603: p_code_combination_id => l_ccid
12604: , p_value_type_code => l_adr_value_type_code
12605: , p_transaction_coa_id => l_adr_transaction_coa_id
12606: , p_accounting_coa_id => l_adr_accounting_coa_id
12634: xla_accounting_err_pkg.build_message
12635: (p_appli_s_name => 'XLA'
12636: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
12637: ,p_token_1 => 'LINE_NUMBER'
12638: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
12639: ,p_token_2 => 'LINE_TYPE_NAME'
12640: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
12641: l_component_type
12642: ,l_component_code
12670: --
12671: --
12672: ------------------------------------------------------------------------------------------------
12673: -- 4219869 Business Flow
12674: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12675: -- Prior Entry. Currently, the following code is always generated.
12676: ------------------------------------------------------------------------------------------------
12677: XLA_AE_LINES_PKG.ValidateCurrentLine;
12678:
12673: -- 4219869 Business Flow
12674: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12675: -- Prior Entry. Currently, the following code is always generated.
12676: ------------------------------------------------------------------------------------------------
12677: XLA_AE_LINES_PKG.ValidateCurrentLine;
12678:
12679: ------------------------------------------------------------------------------------
12680: -- 4219869 Business Flow
12681: -- Populated credit and debit amounts -- Need to generate this within IF
12679: ------------------------------------------------------------------------------------
12680: -- 4219869 Business Flow
12681: -- Populated credit and debit amounts -- Need to generate this within IF
12682: ------------------------------------------------------------------------------------
12683: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12684:
12685: ----------------------------------------------------------------------------------
12686: -- 4219869 Business Flow
12687: -- Update journal entry status -- Need to generate this within IF
12711: -- To allow MPA report to determine if it should generate report process
12712: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12713: ------------------------------------------------------------------------------------------
12714:
12715: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12716: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12717: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12718: -- call ADRs
12719: -- Bug 4922099
12712: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12713: ------------------------------------------------------------------------------------------
12714:
12715: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12716: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12717: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12718: -- call ADRs
12719: -- Bug 4922099
12720: --
12736: , x_value_type_code => l_adr_value_type_code
12737: , p_side => 'NA'
12738: );
12739:
12740: xla_ae_lines_pkg.set_ccid(
12741: p_code_combination_id => l_ccid
12742: , p_value_type_code => l_adr_value_type_code
12743: , p_transaction_coa_id => l_adr_transaction_coa_id
12744: , p_accounting_coa_id => l_adr_accounting_coa_id
12759:
12760: --
12761: -- Update the line information that should be overwritten
12762: --
12763: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12764: p_header_num => 1);
12765: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12766:
12767: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12761: -- Update the line information that should be overwritten
12762: --
12763: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12764: p_header_num => 1);
12765: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12766:
12767: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12768:
12769: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12763: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12764: p_header_num => 1);
12765: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12766:
12767: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12768:
12769: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12770: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12771: END IF;
12766:
12767: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12768:
12769: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12770: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12771: END IF;
12772:
12773: --
12774: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12773: --
12774: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12775: --
12776: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
12777: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
12778: ELSE
12779: ---------------------------------------------------------------------------------------------------
12780: -- 4262811a Switch Sign
12781: ---------------------------------------------------------------------------------------------------
12778: ELSE
12779: ---------------------------------------------------------------------------------------------------
12780: -- 4262811a Switch Sign
12781: ---------------------------------------------------------------------------------------------------
12782: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12783: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12784: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12785: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12786: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12779: ---------------------------------------------------------------------------------------------------
12780: -- 4262811a Switch Sign
12781: ---------------------------------------------------------------------------------------------------
12782: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12783: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12784: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12785: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12786: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12787: -- 5132302
12780: -- 4262811a Switch Sign
12781: ---------------------------------------------------------------------------------------------------
12782: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12783: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12784: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12785: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12786: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12787: -- 5132302
12788: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12781: ---------------------------------------------------------------------------------------------------
12782: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12783: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12784: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12785: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12786: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12787: -- 5132302
12788: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12789: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12782: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12783: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12784: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12785: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12786: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12787: -- 5132302
12788: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12789: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12790:
12784: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12785: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12786: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12787: -- 5132302
12788: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12789: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12790:
12791: END IF;
12792:
12785: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12786: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12787: -- 5132302
12788: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12789: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12790:
12791: END IF;
12792:
12793: -- 4955764
12790:
12791: END IF;
12792:
12793: -- 4955764
12794: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12795: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12796:
12797:
12798: XLA_AE_LINES_PKG.ValidateCurrentLine;
12794: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12795: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12796:
12797:
12798: XLA_AE_LINES_PKG.ValidateCurrentLine;
12799: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12800:
12801: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12802: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12795: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12796:
12797:
12798: XLA_AE_LINES_PKG.ValidateCurrentLine;
12799: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12800:
12801: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12802: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12803: ,p_balance_type_code => l_balance_type_code);
12936: --
12937: -- bulk performance
12938: --
12939: l_balance_type_code VARCHAR2(1);
12940: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
12941: l_log_module VARCHAR2(240);
12942:
12943: --
12944: -- Upgrade strategy
13004: ') = 'CHARGES'
13005: THEN
13006:
13007: --
13008: XLA_AE_LINES_PKG.SetNewLine;
13009:
13010: p_balance_type_code := l_balance_type_code;
13011: -- set the flag so later we will know whether the gain loss line needs to be created
13012:
13016:
13017: --
13018: -- bulk performance
13019: --
13020: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
13021: p_header_num => 0); -- 4262811
13022: --
13023: -- set accounting line options
13024: --
13021: p_header_num => 0); -- 4262811
13022: --
13023: -- set accounting line options
13024: --
13025: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
13026: p_natural_side_code => 'C'
13027: , p_gain_or_loss_flag => 'N'
13028: , p_gl_transfer_mode_code => 'S'
13029: , p_acct_entry_type_code => 'A'
13035: --
13036: --
13037: -- set accounting line type info
13038: --
13039: xla_ae_lines_pkg.SetAcctLineType
13040: (p_component_type => l_component_type
13041: ,p_event_type_code => l_event_type_code
13042: ,p_line_definition_owner_code => l_line_definition_owner_code
13043: ,p_line_definition_code => l_line_definition_code
13049: ,p_event_class_code => l_event_class_code);
13050: --
13051: -- set accounting class
13052: --
13053: xla_ae_lines_pkg.SetAcctClass(
13054: p_accounting_class_code => 'CHARGES'
13055: , p_ae_header_id => l_ae_header_id
13056: );
13057:
13057:
13058: --
13059: -- set rounding class
13060: --
13061: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13062: 'RECEIVABLE';
13063:
13064: --
13065: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13061: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13062: 'RECEIVABLE';
13063:
13064: --
13065: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13066: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13067: --
13068: -- bulk performance
13069: --
13062: 'RECEIVABLE';
13063:
13064: --
13065: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13066: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13067: --
13068: -- bulk performance
13069: --
13070: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13066: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13067: --
13068: -- bulk performance
13069: --
13070: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13071:
13072: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13073: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13074:
13068: -- bulk performance
13069: --
13070: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13071:
13072: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13073: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13074:
13075: -- 4955764
13076: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13072: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13073: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13074:
13075: -- 4955764
13076: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13077: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
13078:
13079: -- 4458381 Public Sector Enh
13080:
13108: l_rec_acct_attrs.array_char_value(11) := p_source_25;
13109: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
13110: l_rec_acct_attrs.array_num_value(12) := p_source_48;
13111:
13112: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13113: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13114:
13115: ---------------------------------------------------------------------------------------------------------------
13116: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13109: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
13110: l_rec_acct_attrs.array_num_value(12) := p_source_48;
13111:
13112: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13113: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13114:
13115: ---------------------------------------------------------------------------------------------------------------
13116: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13117: ---------------------------------------------------------------------------------------------------------------
13112: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13113: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13114:
13115: ---------------------------------------------------------------------------------------------------------------
13116: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13117: ---------------------------------------------------------------------------------------------------------------
13118: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13119:
13120: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13114:
13115: ---------------------------------------------------------------------------------------------------------------
13116: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13117: ---------------------------------------------------------------------------------------------------------------
13118: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13119:
13120: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13121: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13122:
13116: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13117: ---------------------------------------------------------------------------------------------------------------
13118: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13119:
13120: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13121: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13122:
13123: IF xla_accounting_cache_pkg.GetValueChar
13124: (p_source_code => 'LEDGER_CATEGORY_CODE'
13117: ---------------------------------------------------------------------------------------------------------------
13118: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13119:
13120: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13121: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13122:
13123: IF xla_accounting_cache_pkg.GetValueChar
13124: (p_source_code => 'LEDGER_CATEGORY_CODE'
13125: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
13128: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
13129: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
13130: )
13131: THEN
13132: xla_ae_lines_pkg.BflowUpgEntry
13133: (p_business_method_code => l_bflow_method_code
13134: ,p_business_class_code => l_bflow_class_code
13135: ,p_balance_type => l_balance_type_code);
13136: ELSE
13168: , x_value_type_code => l_adr_value_type_code
13169: , p_side => 'NA'
13170: );
13171:
13172: xla_ae_lines_pkg.set_ccid(
13173: p_code_combination_id => l_ccid
13174: , p_value_type_code => l_adr_value_type_code
13175: , p_transaction_coa_id => l_adr_transaction_coa_id
13176: , p_accounting_coa_id => l_adr_accounting_coa_id
13204: xla_accounting_err_pkg.build_message
13205: (p_appli_s_name => 'XLA'
13206: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
13207: ,p_token_1 => 'LINE_NUMBER'
13208: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
13209: ,p_token_2 => 'LINE_TYPE_NAME'
13210: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
13211: l_component_type
13212: ,l_component_code
13240: --
13241: --
13242: ------------------------------------------------------------------------------------------------
13243: -- 4219869 Business Flow
13244: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13245: -- Prior Entry. Currently, the following code is always generated.
13246: ------------------------------------------------------------------------------------------------
13247: XLA_AE_LINES_PKG.ValidateCurrentLine;
13248:
13243: -- 4219869 Business Flow
13244: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13245: -- Prior Entry. Currently, the following code is always generated.
13246: ------------------------------------------------------------------------------------------------
13247: XLA_AE_LINES_PKG.ValidateCurrentLine;
13248:
13249: ------------------------------------------------------------------------------------
13250: -- 4219869 Business Flow
13251: -- Populated credit and debit amounts -- Need to generate this within IF
13249: ------------------------------------------------------------------------------------
13250: -- 4219869 Business Flow
13251: -- Populated credit and debit amounts -- Need to generate this within IF
13252: ------------------------------------------------------------------------------------
13253: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13254:
13255: ----------------------------------------------------------------------------------
13256: -- 4219869 Business Flow
13257: -- Update journal entry status -- Need to generate this within IF
13281: -- To allow MPA report to determine if it should generate report process
13282: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13283: ------------------------------------------------------------------------------------------
13284:
13285: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13286: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13287: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13288: -- call ADRs
13289: -- Bug 4922099
13282: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13283: ------------------------------------------------------------------------------------------
13284:
13285: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13286: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13287: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13288: -- call ADRs
13289: -- Bug 4922099
13290: --
13306: , x_value_type_code => l_adr_value_type_code
13307: , p_side => 'NA'
13308: );
13309:
13310: xla_ae_lines_pkg.set_ccid(
13311: p_code_combination_id => l_ccid
13312: , p_value_type_code => l_adr_value_type_code
13313: , p_transaction_coa_id => l_adr_transaction_coa_id
13314: , p_accounting_coa_id => l_adr_accounting_coa_id
13329:
13330: --
13331: -- Update the line information that should be overwritten
13332: --
13333: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13334: p_header_num => 1);
13335: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13336:
13337: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13331: -- Update the line information that should be overwritten
13332: --
13333: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13334: p_header_num => 1);
13335: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13336:
13337: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13338:
13339: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13333: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13334: p_header_num => 1);
13335: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13336:
13337: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13338:
13339: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13340: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13341: END IF;
13336:
13337: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13338:
13339: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13340: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13341: END IF;
13342:
13343: --
13344: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13343: --
13344: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13345: --
13346: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
13347: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
13348: ELSE
13349: ---------------------------------------------------------------------------------------------------
13350: -- 4262811a Switch Sign
13351: ---------------------------------------------------------------------------------------------------
13348: ELSE
13349: ---------------------------------------------------------------------------------------------------
13350: -- 4262811a Switch Sign
13351: ---------------------------------------------------------------------------------------------------
13352: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13353: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13355: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13349: ---------------------------------------------------------------------------------------------------
13350: -- 4262811a Switch Sign
13351: ---------------------------------------------------------------------------------------------------
13352: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13353: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13355: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13357: -- 5132302
13350: -- 4262811a Switch Sign
13351: ---------------------------------------------------------------------------------------------------
13352: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13353: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13355: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13357: -- 5132302
13358: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13351: ---------------------------------------------------------------------------------------------------
13352: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13353: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13355: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13357: -- 5132302
13358: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13359: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13352: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13353: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13355: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13357: -- 5132302
13358: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13359: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13360:
13354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13355: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13357: -- 5132302
13358: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13359: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13360:
13361: END IF;
13362:
13355: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13357: -- 5132302
13358: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13359: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13360:
13361: END IF;
13362:
13363: -- 4955764
13360:
13361: END IF;
13362:
13363: -- 4955764
13364: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13365: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13366:
13367:
13368: XLA_AE_LINES_PKG.ValidateCurrentLine;
13364: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13365: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13366:
13367:
13368: XLA_AE_LINES_PKG.ValidateCurrentLine;
13369: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13370:
13371: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13372: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13365: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13366:
13367:
13368: XLA_AE_LINES_PKG.ValidateCurrentLine;
13369: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13370:
13371: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13372: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13373: ,p_balance_type_code => l_balance_type_code);
13506: --
13507: -- bulk performance
13508: --
13509: l_balance_type_code VARCHAR2(1);
13510: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
13511: l_log_module VARCHAR2(240);
13512:
13513: --
13514: -- Upgrade strategy
13574: ') = 'FREIGHT'
13575: THEN
13576:
13577: --
13578: XLA_AE_LINES_PKG.SetNewLine;
13579:
13580: p_balance_type_code := l_balance_type_code;
13581: -- set the flag so later we will know whether the gain loss line needs to be created
13582:
13586:
13587: --
13588: -- bulk performance
13589: --
13590: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
13591: p_header_num => 0); -- 4262811
13592: --
13593: -- set accounting line options
13594: --
13591: p_header_num => 0); -- 4262811
13592: --
13593: -- set accounting line options
13594: --
13595: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
13596: p_natural_side_code => 'C'
13597: , p_gain_or_loss_flag => 'N'
13598: , p_gl_transfer_mode_code => 'S'
13599: , p_acct_entry_type_code => 'A'
13605: --
13606: --
13607: -- set accounting line type info
13608: --
13609: xla_ae_lines_pkg.SetAcctLineType
13610: (p_component_type => l_component_type
13611: ,p_event_type_code => l_event_type_code
13612: ,p_line_definition_owner_code => l_line_definition_owner_code
13613: ,p_line_definition_code => l_line_definition_code
13619: ,p_event_class_code => l_event_class_code);
13620: --
13621: -- set accounting class
13622: --
13623: xla_ae_lines_pkg.SetAcctClass(
13624: p_accounting_class_code => 'FREIGHT'
13625: , p_ae_header_id => l_ae_header_id
13626: );
13627:
13627:
13628: --
13629: -- set rounding class
13630: --
13631: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13632: 'RECEIVABLE';
13633:
13634: --
13635: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13631: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13632: 'RECEIVABLE';
13633:
13634: --
13635: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13636: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13637: --
13638: -- bulk performance
13639: --
13632: 'RECEIVABLE';
13633:
13634: --
13635: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13636: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13637: --
13638: -- bulk performance
13639: --
13640: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13636: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13637: --
13638: -- bulk performance
13639: --
13640: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13641:
13642: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13643: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13644:
13638: -- bulk performance
13639: --
13640: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13641:
13642: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13643: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13644:
13645: -- 4955764
13646: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13642: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13643: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13644:
13645: -- 4955764
13646: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13647: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
13648:
13649: -- 4458381 Public Sector Enh
13650:
13678: l_rec_acct_attrs.array_char_value(11) := p_source_25;
13679: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
13680: l_rec_acct_attrs.array_num_value(12) := p_source_48;
13681:
13682: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13683: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13684:
13685: ---------------------------------------------------------------------------------------------------------------
13686: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13679: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
13680: l_rec_acct_attrs.array_num_value(12) := p_source_48;
13681:
13682: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13683: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13684:
13685: ---------------------------------------------------------------------------------------------------------------
13686: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13687: ---------------------------------------------------------------------------------------------------------------
13682: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13683: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13684:
13685: ---------------------------------------------------------------------------------------------------------------
13686: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13687: ---------------------------------------------------------------------------------------------------------------
13688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13689:
13690: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13684:
13685: ---------------------------------------------------------------------------------------------------------------
13686: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13687: ---------------------------------------------------------------------------------------------------------------
13688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13689:
13690: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13691: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13692:
13686: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13687: ---------------------------------------------------------------------------------------------------------------
13688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13689:
13690: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13691: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13692:
13693: IF xla_accounting_cache_pkg.GetValueChar
13694: (p_source_code => 'LEDGER_CATEGORY_CODE'
13687: ---------------------------------------------------------------------------------------------------------------
13688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13689:
13690: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13691: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13692:
13693: IF xla_accounting_cache_pkg.GetValueChar
13694: (p_source_code => 'LEDGER_CATEGORY_CODE'
13695: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
13698: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
13699: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
13700: )
13701: THEN
13702: xla_ae_lines_pkg.BflowUpgEntry
13703: (p_business_method_code => l_bflow_method_code
13704: ,p_business_class_code => l_bflow_class_code
13705: ,p_balance_type => l_balance_type_code);
13706: ELSE
13738: , x_value_type_code => l_adr_value_type_code
13739: , p_side => 'NA'
13740: );
13741:
13742: xla_ae_lines_pkg.set_ccid(
13743: p_code_combination_id => l_ccid
13744: , p_value_type_code => l_adr_value_type_code
13745: , p_transaction_coa_id => l_adr_transaction_coa_id
13746: , p_accounting_coa_id => l_adr_accounting_coa_id
13774: xla_accounting_err_pkg.build_message
13775: (p_appli_s_name => 'XLA'
13776: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
13777: ,p_token_1 => 'LINE_NUMBER'
13778: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
13779: ,p_token_2 => 'LINE_TYPE_NAME'
13780: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
13781: l_component_type
13782: ,l_component_code
13810: --
13811: --
13812: ------------------------------------------------------------------------------------------------
13813: -- 4219869 Business Flow
13814: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13815: -- Prior Entry. Currently, the following code is always generated.
13816: ------------------------------------------------------------------------------------------------
13817: XLA_AE_LINES_PKG.ValidateCurrentLine;
13818:
13813: -- 4219869 Business Flow
13814: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13815: -- Prior Entry. Currently, the following code is always generated.
13816: ------------------------------------------------------------------------------------------------
13817: XLA_AE_LINES_PKG.ValidateCurrentLine;
13818:
13819: ------------------------------------------------------------------------------------
13820: -- 4219869 Business Flow
13821: -- Populated credit and debit amounts -- Need to generate this within IF
13819: ------------------------------------------------------------------------------------
13820: -- 4219869 Business Flow
13821: -- Populated credit and debit amounts -- Need to generate this within IF
13822: ------------------------------------------------------------------------------------
13823: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13824:
13825: ----------------------------------------------------------------------------------
13826: -- 4219869 Business Flow
13827: -- Update journal entry status -- Need to generate this within IF
13851: -- To allow MPA report to determine if it should generate report process
13852: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13853: ------------------------------------------------------------------------------------------
13854:
13855: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13856: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13857: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13858: -- call ADRs
13859: -- Bug 4922099
13852: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13853: ------------------------------------------------------------------------------------------
13854:
13855: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13856: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13857: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13858: -- call ADRs
13859: -- Bug 4922099
13860: --
13876: , x_value_type_code => l_adr_value_type_code
13877: , p_side => 'NA'
13878: );
13879:
13880: xla_ae_lines_pkg.set_ccid(
13881: p_code_combination_id => l_ccid
13882: , p_value_type_code => l_adr_value_type_code
13883: , p_transaction_coa_id => l_adr_transaction_coa_id
13884: , p_accounting_coa_id => l_adr_accounting_coa_id
13899:
13900: --
13901: -- Update the line information that should be overwritten
13902: --
13903: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13904: p_header_num => 1);
13905: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13906:
13907: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13901: -- Update the line information that should be overwritten
13902: --
13903: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13904: p_header_num => 1);
13905: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13906:
13907: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13908:
13909: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13903: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13904: p_header_num => 1);
13905: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13906:
13907: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13908:
13909: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13910: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13911: END IF;
13906:
13907: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13908:
13909: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13910: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13911: END IF;
13912:
13913: --
13914: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13913: --
13914: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13915: --
13916: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
13917: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
13918: ELSE
13919: ---------------------------------------------------------------------------------------------------
13920: -- 4262811a Switch Sign
13921: ---------------------------------------------------------------------------------------------------
13918: ELSE
13919: ---------------------------------------------------------------------------------------------------
13920: -- 4262811a Switch Sign
13921: ---------------------------------------------------------------------------------------------------
13922: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13923: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13924: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13925: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13926: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13919: ---------------------------------------------------------------------------------------------------
13920: -- 4262811a Switch Sign
13921: ---------------------------------------------------------------------------------------------------
13922: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13923: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13924: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13925: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13926: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13927: -- 5132302
13920: -- 4262811a Switch Sign
13921: ---------------------------------------------------------------------------------------------------
13922: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13923: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13924: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13925: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13926: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13927: -- 5132302
13928: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13921: ---------------------------------------------------------------------------------------------------
13922: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13923: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13924: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13925: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13926: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13927: -- 5132302
13928: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13929: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13922: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13923: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13924: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13925: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13926: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13927: -- 5132302
13928: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13929: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13930:
13924: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13925: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13926: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13927: -- 5132302
13928: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13929: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13930:
13931: END IF;
13932:
13925: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13926: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13927: -- 5132302
13928: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13929: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13930:
13931: END IF;
13932:
13933: -- 4955764
13930:
13931: END IF;
13932:
13933: -- 4955764
13934: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13935: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13936:
13937:
13938: XLA_AE_LINES_PKG.ValidateCurrentLine;
13934: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13935: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13936:
13937:
13938: XLA_AE_LINES_PKG.ValidateCurrentLine;
13939: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13940:
13941: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13942: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13935: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13936:
13937:
13938: XLA_AE_LINES_PKG.ValidateCurrentLine;
13939: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13940:
13941: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13942: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13943: ,p_balance_type_code => l_balance_type_code);
14076: --
14077: -- bulk performance
14078: --
14079: l_balance_type_code VARCHAR2(1);
14080: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
14081: l_log_module VARCHAR2(240);
14082:
14083: --
14084: -- Upgrade strategy
14144: ') = 'REV'
14145: THEN
14146:
14147: --
14148: XLA_AE_LINES_PKG.SetNewLine;
14149:
14150: p_balance_type_code := l_balance_type_code;
14151: -- set the flag so later we will know whether the gain loss line needs to be created
14152:
14156:
14157: --
14158: -- bulk performance
14159: --
14160: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
14161: p_header_num => 0); -- 4262811
14162: --
14163: -- set accounting line options
14164: --
14161: p_header_num => 0); -- 4262811
14162: --
14163: -- set accounting line options
14164: --
14165: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
14166: p_natural_side_code => 'C'
14167: , p_gain_or_loss_flag => 'N'
14168: , p_gl_transfer_mode_code => 'S'
14169: , p_acct_entry_type_code => 'A'
14175: --
14176: --
14177: -- set accounting line type info
14178: --
14179: xla_ae_lines_pkg.SetAcctLineType
14180: (p_component_type => l_component_type
14181: ,p_event_type_code => l_event_type_code
14182: ,p_line_definition_owner_code => l_line_definition_owner_code
14183: ,p_line_definition_code => l_line_definition_code
14189: ,p_event_class_code => l_event_class_code);
14190: --
14191: -- set accounting class
14192: --
14193: xla_ae_lines_pkg.SetAcctClass(
14194: p_accounting_class_code => 'REVENUE'
14195: , p_ae_header_id => l_ae_header_id
14196: );
14197:
14197:
14198: --
14199: -- set rounding class
14200: --
14201: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14202: 'RECEIVABLE';
14203:
14204: --
14205: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14201: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14202: 'RECEIVABLE';
14203:
14204: --
14205: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14206: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14207: --
14208: -- bulk performance
14209: --
14202: 'RECEIVABLE';
14203:
14204: --
14205: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14206: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14207: --
14208: -- bulk performance
14209: --
14210: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14206: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14207: --
14208: -- bulk performance
14209: --
14210: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14211:
14212: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14213: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14214:
14208: -- bulk performance
14209: --
14210: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14211:
14212: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14213: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14214:
14215: -- 4955764
14216: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14212: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14213: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14214:
14215: -- 4955764
14216: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14217: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
14218:
14219: -- 4458381 Public Sector Enh
14220:
14248: l_rec_acct_attrs.array_char_value(11) := p_source_25;
14249: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
14250: l_rec_acct_attrs.array_num_value(12) := p_source_48;
14251:
14252: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14253: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14254:
14255: ---------------------------------------------------------------------------------------------------------------
14256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14249: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
14250: l_rec_acct_attrs.array_num_value(12) := p_source_48;
14251:
14252: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14253: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14254:
14255: ---------------------------------------------------------------------------------------------------------------
14256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14257: ---------------------------------------------------------------------------------------------------------------
14252: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14253: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14254:
14255: ---------------------------------------------------------------------------------------------------------------
14256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14257: ---------------------------------------------------------------------------------------------------------------
14258: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14259:
14260: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14254:
14255: ---------------------------------------------------------------------------------------------------------------
14256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14257: ---------------------------------------------------------------------------------------------------------------
14258: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14259:
14260: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14261: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14262:
14256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14257: ---------------------------------------------------------------------------------------------------------------
14258: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14259:
14260: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14261: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14262:
14263: IF xla_accounting_cache_pkg.GetValueChar
14264: (p_source_code => 'LEDGER_CATEGORY_CODE'
14257: ---------------------------------------------------------------------------------------------------------------
14258: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14259:
14260: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14261: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14262:
14263: IF xla_accounting_cache_pkg.GetValueChar
14264: (p_source_code => 'LEDGER_CATEGORY_CODE'
14265: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
14268: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
14269: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
14270: )
14271: THEN
14272: xla_ae_lines_pkg.BflowUpgEntry
14273: (p_business_method_code => l_bflow_method_code
14274: ,p_business_class_code => l_bflow_class_code
14275: ,p_balance_type => l_balance_type_code);
14276: ELSE
14308: , x_value_type_code => l_adr_value_type_code
14309: , p_side => 'NA'
14310: );
14311:
14312: xla_ae_lines_pkg.set_ccid(
14313: p_code_combination_id => l_ccid
14314: , p_value_type_code => l_adr_value_type_code
14315: , p_transaction_coa_id => l_adr_transaction_coa_id
14316: , p_accounting_coa_id => l_adr_accounting_coa_id
14344: xla_accounting_err_pkg.build_message
14345: (p_appli_s_name => 'XLA'
14346: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
14347: ,p_token_1 => 'LINE_NUMBER'
14348: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
14349: ,p_token_2 => 'LINE_TYPE_NAME'
14350: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
14351: l_component_type
14352: ,l_component_code
14380: --
14381: --
14382: ------------------------------------------------------------------------------------------------
14383: -- 4219869 Business Flow
14384: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14385: -- Prior Entry. Currently, the following code is always generated.
14386: ------------------------------------------------------------------------------------------------
14387: XLA_AE_LINES_PKG.ValidateCurrentLine;
14388:
14383: -- 4219869 Business Flow
14384: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14385: -- Prior Entry. Currently, the following code is always generated.
14386: ------------------------------------------------------------------------------------------------
14387: XLA_AE_LINES_PKG.ValidateCurrentLine;
14388:
14389: ------------------------------------------------------------------------------------
14390: -- 4219869 Business Flow
14391: -- Populated credit and debit amounts -- Need to generate this within IF
14389: ------------------------------------------------------------------------------------
14390: -- 4219869 Business Flow
14391: -- Populated credit and debit amounts -- Need to generate this within IF
14392: ------------------------------------------------------------------------------------
14393: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14394:
14395: ----------------------------------------------------------------------------------
14396: -- 4219869 Business Flow
14397: -- Update journal entry status -- Need to generate this within IF
14421: -- To allow MPA report to determine if it should generate report process
14422: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14423: ------------------------------------------------------------------------------------------
14424:
14425: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14426: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14427: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14428: -- call ADRs
14429: -- Bug 4922099
14422: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14423: ------------------------------------------------------------------------------------------
14424:
14425: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14426: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14427: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14428: -- call ADRs
14429: -- Bug 4922099
14430: --
14446: , x_value_type_code => l_adr_value_type_code
14447: , p_side => 'NA'
14448: );
14449:
14450: xla_ae_lines_pkg.set_ccid(
14451: p_code_combination_id => l_ccid
14452: , p_value_type_code => l_adr_value_type_code
14453: , p_transaction_coa_id => l_adr_transaction_coa_id
14454: , p_accounting_coa_id => l_adr_accounting_coa_id
14469:
14470: --
14471: -- Update the line information that should be overwritten
14472: --
14473: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14474: p_header_num => 1);
14475: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14476:
14477: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14471: -- Update the line information that should be overwritten
14472: --
14473: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14474: p_header_num => 1);
14475: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14476:
14477: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14478:
14479: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14473: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14474: p_header_num => 1);
14475: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14476:
14477: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14478:
14479: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14480: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14481: END IF;
14476:
14477: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14478:
14479: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14480: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14481: END IF;
14482:
14483: --
14484: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14483: --
14484: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14485: --
14486: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
14487: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
14488: ELSE
14489: ---------------------------------------------------------------------------------------------------
14490: -- 4262811a Switch Sign
14491: ---------------------------------------------------------------------------------------------------
14488: ELSE
14489: ---------------------------------------------------------------------------------------------------
14490: -- 4262811a Switch Sign
14491: ---------------------------------------------------------------------------------------------------
14492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14489: ---------------------------------------------------------------------------------------------------
14490: -- 4262811a Switch Sign
14491: ---------------------------------------------------------------------------------------------------
14492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14497: -- 5132302
14490: -- 4262811a Switch Sign
14491: ---------------------------------------------------------------------------------------------------
14492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14497: -- 5132302
14498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14491: ---------------------------------------------------------------------------------------------------
14492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14497: -- 5132302
14498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14499: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14497: -- 5132302
14498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14499: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14500:
14494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14497: -- 5132302
14498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14499: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14500:
14501: END IF;
14502:
14495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14497: -- 5132302
14498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14499: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14500:
14501: END IF;
14502:
14503: -- 4955764
14500:
14501: END IF;
14502:
14503: -- 4955764
14504: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14505: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14506:
14507:
14508: XLA_AE_LINES_PKG.ValidateCurrentLine;
14504: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14505: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14506:
14507:
14508: XLA_AE_LINES_PKG.ValidateCurrentLine;
14509: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14510:
14511: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14512: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14505: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14506:
14507:
14508: XLA_AE_LINES_PKG.ValidateCurrentLine;
14509: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14510:
14511: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14512: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14513: ,p_balance_type_code => l_balance_type_code);
14646: --
14647: -- bulk performance
14648: --
14649: l_balance_type_code VARCHAR2(1);
14650: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
14651: l_log_module VARCHAR2(240);
14652:
14653: --
14654: -- Upgrade strategy
14714: ') = 'ROUND'
14715: THEN
14716:
14717: --
14718: XLA_AE_LINES_PKG.SetNewLine;
14719:
14720: p_balance_type_code := l_balance_type_code;
14721: -- set the flag so later we will know whether the gain loss line needs to be created
14722:
14726:
14727: --
14728: -- bulk performance
14729: --
14730: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
14731: p_header_num => 0); -- 4262811
14732: --
14733: -- set accounting line options
14734: --
14731: p_header_num => 0); -- 4262811
14732: --
14733: -- set accounting line options
14734: --
14735: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
14736: p_natural_side_code => 'C'
14737: , p_gain_or_loss_flag => 'N'
14738: , p_gl_transfer_mode_code => 'S'
14739: , p_acct_entry_type_code => 'A'
14745: --
14746: --
14747: -- set accounting line type info
14748: --
14749: xla_ae_lines_pkg.SetAcctLineType
14750: (p_component_type => l_component_type
14751: ,p_event_type_code => l_event_type_code
14752: ,p_line_definition_owner_code => l_line_definition_owner_code
14753: ,p_line_definition_code => l_line_definition_code
14759: ,p_event_class_code => l_event_class_code);
14760: --
14761: -- set accounting class
14762: --
14763: xla_ae_lines_pkg.SetAcctClass(
14764: p_accounting_class_code => 'ROUNDING'
14765: , p_ae_header_id => l_ae_header_id
14766: );
14767:
14767:
14768: --
14769: -- set rounding class
14770: --
14771: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14772: 'RECEIVABLE';
14773:
14774: --
14775: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14771: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14772: 'RECEIVABLE';
14773:
14774: --
14775: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14776: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14777: --
14778: -- bulk performance
14779: --
14772: 'RECEIVABLE';
14773:
14774: --
14775: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14776: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14777: --
14778: -- bulk performance
14779: --
14780: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14776: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14777: --
14778: -- bulk performance
14779: --
14780: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14781:
14782: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14784:
14778: -- bulk performance
14779: --
14780: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14781:
14782: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14784:
14785: -- 4955764
14786: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14782: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14784:
14785: -- 4955764
14786: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14787: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
14788:
14789: -- 4458381 Public Sector Enh
14790:
14818: l_rec_acct_attrs.array_char_value(11) := p_source_25;
14819: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
14820: l_rec_acct_attrs.array_num_value(12) := p_source_48;
14821:
14822: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14823: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14824:
14825: ---------------------------------------------------------------------------------------------------------------
14826: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14819: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
14820: l_rec_acct_attrs.array_num_value(12) := p_source_48;
14821:
14822: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14823: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14824:
14825: ---------------------------------------------------------------------------------------------------------------
14826: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14827: ---------------------------------------------------------------------------------------------------------------
14822: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14823: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14824:
14825: ---------------------------------------------------------------------------------------------------------------
14826: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14827: ---------------------------------------------------------------------------------------------------------------
14828: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14829:
14830: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14824:
14825: ---------------------------------------------------------------------------------------------------------------
14826: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14827: ---------------------------------------------------------------------------------------------------------------
14828: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14829:
14830: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14831: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14832:
14826: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14827: ---------------------------------------------------------------------------------------------------------------
14828: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14829:
14830: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14831: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14832:
14833: IF xla_accounting_cache_pkg.GetValueChar
14834: (p_source_code => 'LEDGER_CATEGORY_CODE'
14827: ---------------------------------------------------------------------------------------------------------------
14828: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14829:
14830: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14831: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14832:
14833: IF xla_accounting_cache_pkg.GetValueChar
14834: (p_source_code => 'LEDGER_CATEGORY_CODE'
14835: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
14838: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
14839: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
14840: )
14841: THEN
14842: xla_ae_lines_pkg.BflowUpgEntry
14843: (p_business_method_code => l_bflow_method_code
14844: ,p_business_class_code => l_bflow_class_code
14845: ,p_balance_type => l_balance_type_code);
14846: ELSE
14878: , x_value_type_code => l_adr_value_type_code
14879: , p_side => 'NA'
14880: );
14881:
14882: xla_ae_lines_pkg.set_ccid(
14883: p_code_combination_id => l_ccid
14884: , p_value_type_code => l_adr_value_type_code
14885: , p_transaction_coa_id => l_adr_transaction_coa_id
14886: , p_accounting_coa_id => l_adr_accounting_coa_id
14914: xla_accounting_err_pkg.build_message
14915: (p_appli_s_name => 'XLA'
14916: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
14917: ,p_token_1 => 'LINE_NUMBER'
14918: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
14919: ,p_token_2 => 'LINE_TYPE_NAME'
14920: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
14921: l_component_type
14922: ,l_component_code
14950: --
14951: --
14952: ------------------------------------------------------------------------------------------------
14953: -- 4219869 Business Flow
14954: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14955: -- Prior Entry. Currently, the following code is always generated.
14956: ------------------------------------------------------------------------------------------------
14957: XLA_AE_LINES_PKG.ValidateCurrentLine;
14958:
14953: -- 4219869 Business Flow
14954: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14955: -- Prior Entry. Currently, the following code is always generated.
14956: ------------------------------------------------------------------------------------------------
14957: XLA_AE_LINES_PKG.ValidateCurrentLine;
14958:
14959: ------------------------------------------------------------------------------------
14960: -- 4219869 Business Flow
14961: -- Populated credit and debit amounts -- Need to generate this within IF
14959: ------------------------------------------------------------------------------------
14960: -- 4219869 Business Flow
14961: -- Populated credit and debit amounts -- Need to generate this within IF
14962: ------------------------------------------------------------------------------------
14963: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14964:
14965: ----------------------------------------------------------------------------------
14966: -- 4219869 Business Flow
14967: -- Update journal entry status -- Need to generate this within IF
14991: -- To allow MPA report to determine if it should generate report process
14992: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14993: ------------------------------------------------------------------------------------------
14994:
14995: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14996: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14997: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14998: -- call ADRs
14999: -- Bug 4922099
14992: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14993: ------------------------------------------------------------------------------------------
14994:
14995: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14996: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14997: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14998: -- call ADRs
14999: -- Bug 4922099
15000: --
15016: , x_value_type_code => l_adr_value_type_code
15017: , p_side => 'NA'
15018: );
15019:
15020: xla_ae_lines_pkg.set_ccid(
15021: p_code_combination_id => l_ccid
15022: , p_value_type_code => l_adr_value_type_code
15023: , p_transaction_coa_id => l_adr_transaction_coa_id
15024: , p_accounting_coa_id => l_adr_accounting_coa_id
15039:
15040: --
15041: -- Update the line information that should be overwritten
15042: --
15043: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15044: p_header_num => 1);
15045: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15046:
15047: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15041: -- Update the line information that should be overwritten
15042: --
15043: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15044: p_header_num => 1);
15045: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15046:
15047: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15048:
15049: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15043: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15044: p_header_num => 1);
15045: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15046:
15047: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15048:
15049: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15050: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15051: END IF;
15046:
15047: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15048:
15049: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15050: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15051: END IF;
15052:
15053: --
15054: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15053: --
15054: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15055: --
15056: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
15057: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
15058: ELSE
15059: ---------------------------------------------------------------------------------------------------
15060: -- 4262811a Switch Sign
15061: ---------------------------------------------------------------------------------------------------
15058: ELSE
15059: ---------------------------------------------------------------------------------------------------
15060: -- 4262811a Switch Sign
15061: ---------------------------------------------------------------------------------------------------
15062: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15064: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15066: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15059: ---------------------------------------------------------------------------------------------------
15060: -- 4262811a Switch Sign
15061: ---------------------------------------------------------------------------------------------------
15062: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15064: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15066: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15067: -- 5132302
15060: -- 4262811a Switch Sign
15061: ---------------------------------------------------------------------------------------------------
15062: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15064: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15066: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15067: -- 5132302
15068: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15061: ---------------------------------------------------------------------------------------------------
15062: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15064: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15066: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15067: -- 5132302
15068: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15069: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15062: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15064: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15066: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15067: -- 5132302
15068: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15069: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15070:
15064: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15066: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15067: -- 5132302
15068: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15069: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15070:
15071: END IF;
15072:
15065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15066: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15067: -- 5132302
15068: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15069: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15070:
15071: END IF;
15072:
15073: -- 4955764
15070:
15071: END IF;
15072:
15073: -- 4955764
15074: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15075: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15076:
15077:
15078: XLA_AE_LINES_PKG.ValidateCurrentLine;
15074: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15075: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15076:
15077:
15078: XLA_AE_LINES_PKG.ValidateCurrentLine;
15079: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15080:
15081: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15082: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15075: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15076:
15077:
15078: XLA_AE_LINES_PKG.ValidateCurrentLine;
15079: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15080:
15081: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15082: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15083: ,p_balance_type_code => l_balance_type_code);
15216: --
15217: -- bulk performance
15218: --
15219: l_balance_type_code VARCHAR2(1);
15220: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
15221: l_log_module VARCHAR2(240);
15222:
15223: --
15224: -- Upgrade strategy
15284: ') = 'TAX'
15285: THEN
15286:
15287: --
15288: XLA_AE_LINES_PKG.SetNewLine;
15289:
15290: p_balance_type_code := l_balance_type_code;
15291: -- set the flag so later we will know whether the gain loss line needs to be created
15292:
15296:
15297: --
15298: -- bulk performance
15299: --
15300: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
15301: p_header_num => 0); -- 4262811
15302: --
15303: -- set accounting line options
15304: --
15301: p_header_num => 0); -- 4262811
15302: --
15303: -- set accounting line options
15304: --
15305: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
15306: p_natural_side_code => 'C'
15307: , p_gain_or_loss_flag => 'N'
15308: , p_gl_transfer_mode_code => 'S'
15309: , p_acct_entry_type_code => 'A'
15315: --
15316: --
15317: -- set accounting line type info
15318: --
15319: xla_ae_lines_pkg.SetAcctLineType
15320: (p_component_type => l_component_type
15321: ,p_event_type_code => l_event_type_code
15322: ,p_line_definition_owner_code => l_line_definition_owner_code
15323: ,p_line_definition_code => l_line_definition_code
15329: ,p_event_class_code => l_event_class_code);
15330: --
15331: -- set accounting class
15332: --
15333: xla_ae_lines_pkg.SetAcctClass(
15334: p_accounting_class_code => 'TAX'
15335: , p_ae_header_id => l_ae_header_id
15336: );
15337:
15337:
15338: --
15339: -- set rounding class
15340: --
15341: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15342: 'RECEIVABLE';
15343:
15344: --
15345: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15341: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15342: 'RECEIVABLE';
15343:
15344: --
15345: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15346: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15347: --
15348: -- bulk performance
15349: --
15342: 'RECEIVABLE';
15343:
15344: --
15345: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15346: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15347: --
15348: -- bulk performance
15349: --
15350: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15346: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15347: --
15348: -- bulk performance
15349: --
15350: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15351:
15352: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15353: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15354:
15348: -- bulk performance
15349: --
15350: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15351:
15352: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15353: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15354:
15355: -- 4955764
15356: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15352: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15353: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15354:
15355: -- 4955764
15356: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15357: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
15358:
15359: -- 4458381 Public Sector Enh
15360:
15388: l_rec_acct_attrs.array_char_value(11) := p_source_25;
15389: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
15390: l_rec_acct_attrs.array_num_value(12) := p_source_48;
15391:
15392: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15393: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15394:
15395: ---------------------------------------------------------------------------------------------------------------
15396: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15389: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
15390: l_rec_acct_attrs.array_num_value(12) := p_source_48;
15391:
15392: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15393: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15394:
15395: ---------------------------------------------------------------------------------------------------------------
15396: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15397: ---------------------------------------------------------------------------------------------------------------
15392: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15393: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15394:
15395: ---------------------------------------------------------------------------------------------------------------
15396: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15397: ---------------------------------------------------------------------------------------------------------------
15398: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15399:
15400: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15394:
15395: ---------------------------------------------------------------------------------------------------------------
15396: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15397: ---------------------------------------------------------------------------------------------------------------
15398: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15399:
15400: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15401: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15402:
15396: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15397: ---------------------------------------------------------------------------------------------------------------
15398: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15399:
15400: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15401: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15402:
15403: IF xla_accounting_cache_pkg.GetValueChar
15404: (p_source_code => 'LEDGER_CATEGORY_CODE'
15397: ---------------------------------------------------------------------------------------------------------------
15398: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15399:
15400: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15401: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15402:
15403: IF xla_accounting_cache_pkg.GetValueChar
15404: (p_source_code => 'LEDGER_CATEGORY_CODE'
15405: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
15408: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
15409: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
15410: )
15411: THEN
15412: xla_ae_lines_pkg.BflowUpgEntry
15413: (p_business_method_code => l_bflow_method_code
15414: ,p_business_class_code => l_bflow_class_code
15415: ,p_balance_type => l_balance_type_code);
15416: ELSE
15448: , x_value_type_code => l_adr_value_type_code
15449: , p_side => 'NA'
15450: );
15451:
15452: xla_ae_lines_pkg.set_ccid(
15453: p_code_combination_id => l_ccid
15454: , p_value_type_code => l_adr_value_type_code
15455: , p_transaction_coa_id => l_adr_transaction_coa_id
15456: , p_accounting_coa_id => l_adr_accounting_coa_id
15484: xla_accounting_err_pkg.build_message
15485: (p_appli_s_name => 'XLA'
15486: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
15487: ,p_token_1 => 'LINE_NUMBER'
15488: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
15489: ,p_token_2 => 'LINE_TYPE_NAME'
15490: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
15491: l_component_type
15492: ,l_component_code
15520: --
15521: --
15522: ------------------------------------------------------------------------------------------------
15523: -- 4219869 Business Flow
15524: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15525: -- Prior Entry. Currently, the following code is always generated.
15526: ------------------------------------------------------------------------------------------------
15527: XLA_AE_LINES_PKG.ValidateCurrentLine;
15528:
15523: -- 4219869 Business Flow
15524: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15525: -- Prior Entry. Currently, the following code is always generated.
15526: ------------------------------------------------------------------------------------------------
15527: XLA_AE_LINES_PKG.ValidateCurrentLine;
15528:
15529: ------------------------------------------------------------------------------------
15530: -- 4219869 Business Flow
15531: -- Populated credit and debit amounts -- Need to generate this within IF
15529: ------------------------------------------------------------------------------------
15530: -- 4219869 Business Flow
15531: -- Populated credit and debit amounts -- Need to generate this within IF
15532: ------------------------------------------------------------------------------------
15533: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15534:
15535: ----------------------------------------------------------------------------------
15536: -- 4219869 Business Flow
15537: -- Update journal entry status -- Need to generate this within IF
15561: -- To allow MPA report to determine if it should generate report process
15562: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15563: ------------------------------------------------------------------------------------------
15564:
15565: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15566: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15567: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15568: -- call ADRs
15569: -- Bug 4922099
15562: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15563: ------------------------------------------------------------------------------------------
15564:
15565: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15566: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15567: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15568: -- call ADRs
15569: -- Bug 4922099
15570: --
15586: , x_value_type_code => l_adr_value_type_code
15587: , p_side => 'NA'
15588: );
15589:
15590: xla_ae_lines_pkg.set_ccid(
15591: p_code_combination_id => l_ccid
15592: , p_value_type_code => l_adr_value_type_code
15593: , p_transaction_coa_id => l_adr_transaction_coa_id
15594: , p_accounting_coa_id => l_adr_accounting_coa_id
15609:
15610: --
15611: -- Update the line information that should be overwritten
15612: --
15613: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15614: p_header_num => 1);
15615: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15616:
15617: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15611: -- Update the line information that should be overwritten
15612: --
15613: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15614: p_header_num => 1);
15615: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15616:
15617: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15618:
15619: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15613: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15614: p_header_num => 1);
15615: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15616:
15617: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15618:
15619: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15620: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15621: END IF;
15616:
15617: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15618:
15619: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15620: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15621: END IF;
15622:
15623: --
15624: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15623: --
15624: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15625: --
15626: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
15627: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
15628: ELSE
15629: ---------------------------------------------------------------------------------------------------
15630: -- 4262811a Switch Sign
15631: ---------------------------------------------------------------------------------------------------
15628: ELSE
15629: ---------------------------------------------------------------------------------------------------
15630: -- 4262811a Switch Sign
15631: ---------------------------------------------------------------------------------------------------
15632: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15634: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15636: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15629: ---------------------------------------------------------------------------------------------------
15630: -- 4262811a Switch Sign
15631: ---------------------------------------------------------------------------------------------------
15632: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15634: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15636: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15637: -- 5132302
15630: -- 4262811a Switch Sign
15631: ---------------------------------------------------------------------------------------------------
15632: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15634: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15636: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15637: -- 5132302
15638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15631: ---------------------------------------------------------------------------------------------------
15632: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15634: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15636: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15637: -- 5132302
15638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15639: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15632: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15634: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15636: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15637: -- 5132302
15638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15639: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15640:
15634: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15636: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15637: -- 5132302
15638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15639: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15640:
15641: END IF;
15642:
15635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15636: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15637: -- 5132302
15638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15639: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15640:
15641: END IF;
15642:
15643: -- 4955764
15640:
15641: END IF;
15642:
15643: -- 4955764
15644: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15645: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15646:
15647:
15648: XLA_AE_LINES_PKG.ValidateCurrentLine;
15644: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15645: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15646:
15647:
15648: XLA_AE_LINES_PKG.ValidateCurrentLine;
15649: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15650:
15651: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15652: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15645: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15646:
15647:
15648: XLA_AE_LINES_PKG.ValidateCurrentLine;
15649: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15650:
15651: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15652: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15653: ,p_balance_type_code => l_balance_type_code);
15786: --
15787: -- bulk performance
15788: --
15789: l_balance_type_code VARCHAR2(1);
15790: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
15791: l_log_module VARCHAR2(240);
15792:
15793: --
15794: -- Upgrade strategy
15854: ') = 'UNBILL'
15855: THEN
15856:
15857: --
15858: XLA_AE_LINES_PKG.SetNewLine;
15859:
15860: p_balance_type_code := l_balance_type_code;
15861: -- set the flag so later we will know whether the gain loss line needs to be created
15862:
15866:
15867: --
15868: -- bulk performance
15869: --
15870: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
15871: p_header_num => 0); -- 4262811
15872: --
15873: -- set accounting line options
15874: --
15871: p_header_num => 0); -- 4262811
15872: --
15873: -- set accounting line options
15874: --
15875: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
15876: p_natural_side_code => 'D'
15877: , p_gain_or_loss_flag => 'N'
15878: , p_gl_transfer_mode_code => 'S'
15879: , p_acct_entry_type_code => 'A'
15885: --
15886: --
15887: -- set accounting line type info
15888: --
15889: xla_ae_lines_pkg.SetAcctLineType
15890: (p_component_type => l_component_type
15891: ,p_event_type_code => l_event_type_code
15892: ,p_line_definition_owner_code => l_line_definition_owner_code
15893: ,p_line_definition_code => l_line_definition_code
15899: ,p_event_class_code => l_event_class_code);
15900: --
15901: -- set accounting class
15902: --
15903: xla_ae_lines_pkg.SetAcctClass(
15904: p_accounting_class_code => 'UNBILL'
15905: , p_ae_header_id => l_ae_header_id
15906: );
15907:
15907:
15908: --
15909: -- set rounding class
15910: --
15911: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15912: 'RECEIVABLE';
15913:
15914: --
15915: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15911: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15912: 'RECEIVABLE';
15913:
15914: --
15915: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15916: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15917: --
15918: -- bulk performance
15919: --
15912: 'RECEIVABLE';
15913:
15914: --
15915: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15916: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15917: --
15918: -- bulk performance
15919: --
15920: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15916: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15917: --
15918: -- bulk performance
15919: --
15920: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15921:
15922: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15923: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15924:
15918: -- bulk performance
15919: --
15920: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15921:
15922: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15923: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15924:
15925: -- 4955764
15926: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15922: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15923: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15924:
15925: -- 4955764
15926: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15927: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
15928:
15929: -- 4458381 Public Sector Enh
15930:
15958: l_rec_acct_attrs.array_char_value(11) := p_source_25;
15959: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
15960: l_rec_acct_attrs.array_num_value(12) := p_source_48;
15961:
15962: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15963: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15964:
15965: ---------------------------------------------------------------------------------------------------------------
15966: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15959: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
15960: l_rec_acct_attrs.array_num_value(12) := p_source_48;
15961:
15962: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15963: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15964:
15965: ---------------------------------------------------------------------------------------------------------------
15966: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15967: ---------------------------------------------------------------------------------------------------------------
15962: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15963: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15964:
15965: ---------------------------------------------------------------------------------------------------------------
15966: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15967: ---------------------------------------------------------------------------------------------------------------
15968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15969:
15970: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15964:
15965: ---------------------------------------------------------------------------------------------------------------
15966: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15967: ---------------------------------------------------------------------------------------------------------------
15968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15969:
15970: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15971: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15972:
15966: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15967: ---------------------------------------------------------------------------------------------------------------
15968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15969:
15970: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15971: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15972:
15973: IF xla_accounting_cache_pkg.GetValueChar
15974: (p_source_code => 'LEDGER_CATEGORY_CODE'
15967: ---------------------------------------------------------------------------------------------------------------
15968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15969:
15970: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15971: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15972:
15973: IF xla_accounting_cache_pkg.GetValueChar
15974: (p_source_code => 'LEDGER_CATEGORY_CODE'
15975: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
15978: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
15979: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
15980: )
15981: THEN
15982: xla_ae_lines_pkg.BflowUpgEntry
15983: (p_business_method_code => l_bflow_method_code
15984: ,p_business_class_code => l_bflow_class_code
15985: ,p_balance_type => l_balance_type_code);
15986: ELSE
16018: , x_value_type_code => l_adr_value_type_code
16019: , p_side => 'NA'
16020: );
16021:
16022: xla_ae_lines_pkg.set_ccid(
16023: p_code_combination_id => l_ccid
16024: , p_value_type_code => l_adr_value_type_code
16025: , p_transaction_coa_id => l_adr_transaction_coa_id
16026: , p_accounting_coa_id => l_adr_accounting_coa_id
16054: xla_accounting_err_pkg.build_message
16055: (p_appli_s_name => 'XLA'
16056: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
16057: ,p_token_1 => 'LINE_NUMBER'
16058: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
16059: ,p_token_2 => 'LINE_TYPE_NAME'
16060: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
16061: l_component_type
16062: ,l_component_code
16090: --
16091: --
16092: ------------------------------------------------------------------------------------------------
16093: -- 4219869 Business Flow
16094: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16095: -- Prior Entry. Currently, the following code is always generated.
16096: ------------------------------------------------------------------------------------------------
16097: XLA_AE_LINES_PKG.ValidateCurrentLine;
16098:
16093: -- 4219869 Business Flow
16094: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16095: -- Prior Entry. Currently, the following code is always generated.
16096: ------------------------------------------------------------------------------------------------
16097: XLA_AE_LINES_PKG.ValidateCurrentLine;
16098:
16099: ------------------------------------------------------------------------------------
16100: -- 4219869 Business Flow
16101: -- Populated credit and debit amounts -- Need to generate this within IF
16099: ------------------------------------------------------------------------------------
16100: -- 4219869 Business Flow
16101: -- Populated credit and debit amounts -- Need to generate this within IF
16102: ------------------------------------------------------------------------------------
16103: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16104:
16105: ----------------------------------------------------------------------------------
16106: -- 4219869 Business Flow
16107: -- Update journal entry status -- Need to generate this within IF
16131: -- To allow MPA report to determine if it should generate report process
16132: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16133: ------------------------------------------------------------------------------------------
16134:
16135: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16136: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16137: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16138: -- call ADRs
16139: -- Bug 4922099
16132: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16133: ------------------------------------------------------------------------------------------
16134:
16135: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16136: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16137: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16138: -- call ADRs
16139: -- Bug 4922099
16140: --
16156: , x_value_type_code => l_adr_value_type_code
16157: , p_side => 'NA'
16158: );
16159:
16160: xla_ae_lines_pkg.set_ccid(
16161: p_code_combination_id => l_ccid
16162: , p_value_type_code => l_adr_value_type_code
16163: , p_transaction_coa_id => l_adr_transaction_coa_id
16164: , p_accounting_coa_id => l_adr_accounting_coa_id
16179:
16180: --
16181: -- Update the line information that should be overwritten
16182: --
16183: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16184: p_header_num => 1);
16185: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16186:
16187: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16181: -- Update the line information that should be overwritten
16182: --
16183: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16184: p_header_num => 1);
16185: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16186:
16187: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16188:
16189: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16183: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16184: p_header_num => 1);
16185: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16186:
16187: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16188:
16189: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16190: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16191: END IF;
16186:
16187: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16188:
16189: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16190: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16191: END IF;
16192:
16193: --
16194: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16193: --
16194: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16195: --
16196: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
16197: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
16198: ELSE
16199: ---------------------------------------------------------------------------------------------------
16200: -- 4262811a Switch Sign
16201: ---------------------------------------------------------------------------------------------------
16198: ELSE
16199: ---------------------------------------------------------------------------------------------------
16200: -- 4262811a Switch Sign
16201: ---------------------------------------------------------------------------------------------------
16202: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16203: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16204: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16205: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16206: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16199: ---------------------------------------------------------------------------------------------------
16200: -- 4262811a Switch Sign
16201: ---------------------------------------------------------------------------------------------------
16202: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16203: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16204: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16205: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16206: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16207: -- 5132302
16200: -- 4262811a Switch Sign
16201: ---------------------------------------------------------------------------------------------------
16202: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16203: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16204: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16205: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16206: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16207: -- 5132302
16208: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16201: ---------------------------------------------------------------------------------------------------
16202: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16203: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16204: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16205: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16206: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16207: -- 5132302
16208: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16209: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16202: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16203: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16204: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16205: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16206: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16207: -- 5132302
16208: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16209: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16210:
16204: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16205: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16206: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16207: -- 5132302
16208: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16209: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16210:
16211: END IF;
16212:
16205: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16206: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16207: -- 5132302
16208: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16209: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16210:
16211: END IF;
16212:
16213: -- 4955764
16210:
16211: END IF;
16212:
16213: -- 4955764
16214: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16215: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16216:
16217:
16218: XLA_AE_LINES_PKG.ValidateCurrentLine;
16214: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16215: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16216:
16217:
16218: XLA_AE_LINES_PKG.ValidateCurrentLine;
16219: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16220:
16221: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16222: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16215: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16216:
16217:
16218: XLA_AE_LINES_PKG.ValidateCurrentLine;
16219: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16220:
16221: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16222: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16223: ,p_balance_type_code => l_balance_type_code);
16356: --
16357: -- bulk performance
16358: --
16359: l_balance_type_code VARCHAR2(1);
16360: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
16361: l_log_module VARCHAR2(240);
16362:
16363: --
16364: -- Upgrade strategy
16424: ') = 'UNEARN'
16425: THEN
16426:
16427: --
16428: XLA_AE_LINES_PKG.SetNewLine;
16429:
16430: p_balance_type_code := l_balance_type_code;
16431: -- set the flag so later we will know whether the gain loss line needs to be created
16432:
16436:
16437: --
16438: -- bulk performance
16439: --
16440: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
16441: p_header_num => 0); -- 4262811
16442: --
16443: -- set accounting line options
16444: --
16441: p_header_num => 0); -- 4262811
16442: --
16443: -- set accounting line options
16444: --
16445: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
16446: p_natural_side_code => 'C'
16447: , p_gain_or_loss_flag => 'N'
16448: , p_gl_transfer_mode_code => 'S'
16449: , p_acct_entry_type_code => 'A'
16455: --
16456: --
16457: -- set accounting line type info
16458: --
16459: xla_ae_lines_pkg.SetAcctLineType
16460: (p_component_type => l_component_type
16461: ,p_event_type_code => l_event_type_code
16462: ,p_line_definition_owner_code => l_line_definition_owner_code
16463: ,p_line_definition_code => l_line_definition_code
16469: ,p_event_class_code => l_event_class_code);
16470: --
16471: -- set accounting class
16472: --
16473: xla_ae_lines_pkg.SetAcctClass(
16474: p_accounting_class_code => 'UNEARNED_REVENUE'
16475: , p_ae_header_id => l_ae_header_id
16476: );
16477:
16477:
16478: --
16479: -- set rounding class
16480: --
16481: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16482: 'RECEIVABLE';
16483:
16484: --
16485: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16481: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16482: 'RECEIVABLE';
16483:
16484: --
16485: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16486: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16487: --
16488: -- bulk performance
16489: --
16482: 'RECEIVABLE';
16483:
16484: --
16485: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16486: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16487: --
16488: -- bulk performance
16489: --
16490: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16486: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16487: --
16488: -- bulk performance
16489: --
16490: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16491:
16492: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16493: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16494:
16488: -- bulk performance
16489: --
16490: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16491:
16492: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16493: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16494:
16495: -- 4955764
16496: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16492: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16493: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16494:
16495: -- 4955764
16496: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16497: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
16498:
16499: -- 4458381 Public Sector Enh
16500:
16528: l_rec_acct_attrs.array_char_value(11) := p_source_25;
16529: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
16530: l_rec_acct_attrs.array_num_value(12) := p_source_48;
16531:
16532: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16533: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16534:
16535: ---------------------------------------------------------------------------------------------------------------
16536: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16529: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
16530: l_rec_acct_attrs.array_num_value(12) := p_source_48;
16531:
16532: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16533: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16534:
16535: ---------------------------------------------------------------------------------------------------------------
16536: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16537: ---------------------------------------------------------------------------------------------------------------
16532: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16533: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16534:
16535: ---------------------------------------------------------------------------------------------------------------
16536: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16537: ---------------------------------------------------------------------------------------------------------------
16538: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16539:
16540: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16534:
16535: ---------------------------------------------------------------------------------------------------------------
16536: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16537: ---------------------------------------------------------------------------------------------------------------
16538: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16539:
16540: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16541: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16542:
16536: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16537: ---------------------------------------------------------------------------------------------------------------
16538: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16539:
16540: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16541: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16542:
16543: IF xla_accounting_cache_pkg.GetValueChar
16544: (p_source_code => 'LEDGER_CATEGORY_CODE'
16537: ---------------------------------------------------------------------------------------------------------------
16538: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16539:
16540: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16541: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16542:
16543: IF xla_accounting_cache_pkg.GetValueChar
16544: (p_source_code => 'LEDGER_CATEGORY_CODE'
16545: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
16548: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
16549: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
16550: )
16551: THEN
16552: xla_ae_lines_pkg.BflowUpgEntry
16553: (p_business_method_code => l_bflow_method_code
16554: ,p_business_class_code => l_bflow_class_code
16555: ,p_balance_type => l_balance_type_code);
16556: ELSE
16588: , x_value_type_code => l_adr_value_type_code
16589: , p_side => 'NA'
16590: );
16591:
16592: xla_ae_lines_pkg.set_ccid(
16593: p_code_combination_id => l_ccid
16594: , p_value_type_code => l_adr_value_type_code
16595: , p_transaction_coa_id => l_adr_transaction_coa_id
16596: , p_accounting_coa_id => l_adr_accounting_coa_id
16624: xla_accounting_err_pkg.build_message
16625: (p_appli_s_name => 'XLA'
16626: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
16627: ,p_token_1 => 'LINE_NUMBER'
16628: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
16629: ,p_token_2 => 'LINE_TYPE_NAME'
16630: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
16631: l_component_type
16632: ,l_component_code
16660: --
16661: --
16662: ------------------------------------------------------------------------------------------------
16663: -- 4219869 Business Flow
16664: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16665: -- Prior Entry. Currently, the following code is always generated.
16666: ------------------------------------------------------------------------------------------------
16667: XLA_AE_LINES_PKG.ValidateCurrentLine;
16668:
16663: -- 4219869 Business Flow
16664: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16665: -- Prior Entry. Currently, the following code is always generated.
16666: ------------------------------------------------------------------------------------------------
16667: XLA_AE_LINES_PKG.ValidateCurrentLine;
16668:
16669: ------------------------------------------------------------------------------------
16670: -- 4219869 Business Flow
16671: -- Populated credit and debit amounts -- Need to generate this within IF
16669: ------------------------------------------------------------------------------------
16670: -- 4219869 Business Flow
16671: -- Populated credit and debit amounts -- Need to generate this within IF
16672: ------------------------------------------------------------------------------------
16673: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16674:
16675: ----------------------------------------------------------------------------------
16676: -- 4219869 Business Flow
16677: -- Update journal entry status -- Need to generate this within IF
16701: -- To allow MPA report to determine if it should generate report process
16702: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16703: ------------------------------------------------------------------------------------------
16704:
16705: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16706: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16707: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16708: -- call ADRs
16709: -- Bug 4922099
16702: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16703: ------------------------------------------------------------------------------------------
16704:
16705: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16706: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16707: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16708: -- call ADRs
16709: -- Bug 4922099
16710: --
16726: , x_value_type_code => l_adr_value_type_code
16727: , p_side => 'NA'
16728: );
16729:
16730: xla_ae_lines_pkg.set_ccid(
16731: p_code_combination_id => l_ccid
16732: , p_value_type_code => l_adr_value_type_code
16733: , p_transaction_coa_id => l_adr_transaction_coa_id
16734: , p_accounting_coa_id => l_adr_accounting_coa_id
16749:
16750: --
16751: -- Update the line information that should be overwritten
16752: --
16753: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16754: p_header_num => 1);
16755: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16756:
16757: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16751: -- Update the line information that should be overwritten
16752: --
16753: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16754: p_header_num => 1);
16755: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16756:
16757: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16758:
16759: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16753: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16754: p_header_num => 1);
16755: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16756:
16757: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16758:
16759: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16760: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16761: END IF;
16756:
16757: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16758:
16759: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16760: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16761: END IF;
16762:
16763: --
16764: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16763: --
16764: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16765: --
16766: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
16767: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
16768: ELSE
16769: ---------------------------------------------------------------------------------------------------
16770: -- 4262811a Switch Sign
16771: ---------------------------------------------------------------------------------------------------
16768: ELSE
16769: ---------------------------------------------------------------------------------------------------
16770: -- 4262811a Switch Sign
16771: ---------------------------------------------------------------------------------------------------
16772: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16773: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16774: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16775: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16776: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16769: ---------------------------------------------------------------------------------------------------
16770: -- 4262811a Switch Sign
16771: ---------------------------------------------------------------------------------------------------
16772: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16773: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16774: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16775: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16776: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16777: -- 5132302
16770: -- 4262811a Switch Sign
16771: ---------------------------------------------------------------------------------------------------
16772: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16773: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16774: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16775: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16776: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16777: -- 5132302
16778: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16771: ---------------------------------------------------------------------------------------------------
16772: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16773: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16774: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16775: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16776: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16777: -- 5132302
16778: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16779: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16772: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16773: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16774: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16775: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16776: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16777: -- 5132302
16778: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16779: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16780:
16774: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16775: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16776: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16777: -- 5132302
16778: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16779: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16780:
16781: END IF;
16782:
16775: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16776: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16777: -- 5132302
16778: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16779: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16780:
16781: END IF;
16782:
16783: -- 4955764
16780:
16781: END IF;
16782:
16783: -- 4955764
16784: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16785: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16786:
16787:
16788: XLA_AE_LINES_PKG.ValidateCurrentLine;
16784: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16785: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16786:
16787:
16788: XLA_AE_LINES_PKG.ValidateCurrentLine;
16789: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16790:
16791: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16792: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16785: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16786:
16787:
16788: XLA_AE_LINES_PKG.ValidateCurrentLine;
16789: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16790:
16791: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16792: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16793: ,p_balance_type_code => l_balance_type_code);
16924: --
16925: -- bulk performance
16926: --
16927: l_balance_type_code VARCHAR2(1);
16928: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
16929: l_log_module VARCHAR2(240);
16930:
16931: --
16932: -- Upgrade strategy
16992: ') = 'REC'
16993: THEN
16994:
16995: --
16996: XLA_AE_LINES_PKG.SetNewLine;
16997:
16998: p_balance_type_code := l_balance_type_code;
16999: -- set the flag so later we will know whether the gain loss line needs to be created
17000:
17004:
17005: --
17006: -- bulk performance
17007: --
17008: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
17009: p_header_num => 0); -- 4262811
17010: --
17011: -- set accounting line options
17012: --
17009: p_header_num => 0); -- 4262811
17010: --
17011: -- set accounting line options
17012: --
17013: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
17014: p_natural_side_code => 'D'
17015: , p_gain_or_loss_flag => 'N'
17016: , p_gl_transfer_mode_code => 'S'
17017: , p_acct_entry_type_code => 'A'
17023: --
17024: --
17025: -- set accounting line type info
17026: --
17027: xla_ae_lines_pkg.SetAcctLineType
17028: (p_component_type => l_component_type
17029: ,p_event_type_code => l_event_type_code
17030: ,p_line_definition_owner_code => l_line_definition_owner_code
17031: ,p_line_definition_code => l_line_definition_code
17037: ,p_event_class_code => l_event_class_code);
17038: --
17039: -- set accounting class
17040: --
17041: xla_ae_lines_pkg.SetAcctClass(
17042: p_accounting_class_code => 'RECEIVABLE'
17043: , p_ae_header_id => l_ae_header_id
17044: );
17045:
17045:
17046: --
17047: -- set rounding class
17048: --
17049: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17050: 'RECEIVABLE';
17051:
17052: --
17053: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17049: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17050: 'RECEIVABLE';
17051:
17052: --
17053: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17054: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17055: --
17056: -- bulk performance
17057: --
17050: 'RECEIVABLE';
17051:
17052: --
17053: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17054: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17055: --
17056: -- bulk performance
17057: --
17058: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17054: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17055: --
17056: -- bulk performance
17057: --
17058: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17059:
17060: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17061: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17062:
17056: -- bulk performance
17057: --
17058: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17059:
17060: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17061: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17062:
17063: -- 4955764
17064: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17060: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17061: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
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('header_index'));
17066:
17067: -- 4458381 Public Sector Enh
17068:
17094: l_rec_acct_attrs.array_num_value(10) := p_source_24;
17095: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
17096: l_rec_acct_attrs.array_char_value(11) := p_source_25;
17097:
17098: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17099: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17100:
17101: ---------------------------------------------------------------------------------------------------------------
17102: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17095: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
17096: l_rec_acct_attrs.array_char_value(11) := p_source_25;
17097:
17098: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17099: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17100:
17101: ---------------------------------------------------------------------------------------------------------------
17102: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17103: ---------------------------------------------------------------------------------------------------------------
17098: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17099: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17100:
17101: ---------------------------------------------------------------------------------------------------------------
17102: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17103: ---------------------------------------------------------------------------------------------------------------
17104: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17105:
17106: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17100:
17101: ---------------------------------------------------------------------------------------------------------------
17102: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17103: ---------------------------------------------------------------------------------------------------------------
17104: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17105:
17106: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17107: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17108:
17102: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17103: ---------------------------------------------------------------------------------------------------------------
17104: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17105:
17106: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17107: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17108:
17109: IF xla_accounting_cache_pkg.GetValueChar
17110: (p_source_code => 'LEDGER_CATEGORY_CODE'
17103: ---------------------------------------------------------------------------------------------------------------
17104: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17105:
17106: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17107: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17108:
17109: IF xla_accounting_cache_pkg.GetValueChar
17110: (p_source_code => 'LEDGER_CATEGORY_CODE'
17111: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
17114: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
17115: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
17116: )
17117: THEN
17118: xla_ae_lines_pkg.BflowUpgEntry
17119: (p_business_method_code => l_bflow_method_code
17120: ,p_business_class_code => l_bflow_class_code
17121: ,p_balance_type => l_balance_type_code);
17122: ELSE
17154: , x_value_type_code => l_adr_value_type_code
17155: , p_side => 'NA'
17156: );
17157:
17158: xla_ae_lines_pkg.set_ccid(
17159: p_code_combination_id => l_ccid
17160: , p_value_type_code => l_adr_value_type_code
17161: , p_transaction_coa_id => l_adr_transaction_coa_id
17162: , p_accounting_coa_id => l_adr_accounting_coa_id
17190: xla_accounting_err_pkg.build_message
17191: (p_appli_s_name => 'XLA'
17192: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
17193: ,p_token_1 => 'LINE_NUMBER'
17194: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
17195: ,p_token_2 => 'LINE_TYPE_NAME'
17196: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
17197: l_component_type
17198: ,l_component_code
17226: --
17227: --
17228: ------------------------------------------------------------------------------------------------
17229: -- 4219869 Business Flow
17230: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17231: -- Prior Entry. Currently, the following code is always generated.
17232: ------------------------------------------------------------------------------------------------
17233: XLA_AE_LINES_PKG.ValidateCurrentLine;
17234:
17229: -- 4219869 Business Flow
17230: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17231: -- Prior Entry. Currently, the following code is always generated.
17232: ------------------------------------------------------------------------------------------------
17233: XLA_AE_LINES_PKG.ValidateCurrentLine;
17234:
17235: ------------------------------------------------------------------------------------
17236: -- 4219869 Business Flow
17237: -- Populated credit and debit amounts -- Need to generate this within IF
17235: ------------------------------------------------------------------------------------
17236: -- 4219869 Business Flow
17237: -- Populated credit and debit amounts -- Need to generate this within IF
17238: ------------------------------------------------------------------------------------
17239: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17240:
17241: ----------------------------------------------------------------------------------
17242: -- 4219869 Business Flow
17243: -- Update journal entry status -- Need to generate this within IF
17267: -- To allow MPA report to determine if it should generate report process
17268: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17269: ------------------------------------------------------------------------------------------
17270:
17271: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17272: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17273: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17274: -- call ADRs
17275: -- Bug 4922099
17268: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17269: ------------------------------------------------------------------------------------------
17270:
17271: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17272: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17273: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17274: -- call ADRs
17275: -- Bug 4922099
17276: --
17292: , x_value_type_code => l_adr_value_type_code
17293: , p_side => 'NA'
17294: );
17295:
17296: xla_ae_lines_pkg.set_ccid(
17297: p_code_combination_id => l_ccid
17298: , p_value_type_code => l_adr_value_type_code
17299: , p_transaction_coa_id => l_adr_transaction_coa_id
17300: , p_accounting_coa_id => l_adr_accounting_coa_id
17315:
17316: --
17317: -- Update the line information that should be overwritten
17318: --
17319: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17320: p_header_num => 1);
17321: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17322:
17323: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17317: -- Update the line information that should be overwritten
17318: --
17319: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17320: p_header_num => 1);
17321: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17322:
17323: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17324:
17325: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17319: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17320: p_header_num => 1);
17321: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17322:
17323: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17324:
17325: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17326: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17327: END IF;
17322:
17323: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17324:
17325: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17326: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17327: END IF;
17328:
17329: --
17330: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17329: --
17330: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17331: --
17332: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
17333: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
17334: ELSE
17335: ---------------------------------------------------------------------------------------------------
17336: -- 4262811a Switch Sign
17337: ---------------------------------------------------------------------------------------------------
17334: ELSE
17335: ---------------------------------------------------------------------------------------------------
17336: -- 4262811a Switch Sign
17337: ---------------------------------------------------------------------------------------------------
17338: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17339: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17340: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17341: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17342: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17335: ---------------------------------------------------------------------------------------------------
17336: -- 4262811a Switch Sign
17337: ---------------------------------------------------------------------------------------------------
17338: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17339: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17340: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17341: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17342: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17343: -- 5132302
17336: -- 4262811a Switch Sign
17337: ---------------------------------------------------------------------------------------------------
17338: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17339: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17340: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17341: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17342: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17343: -- 5132302
17344: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17337: ---------------------------------------------------------------------------------------------------
17338: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17339: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17340: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17341: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17342: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17343: -- 5132302
17344: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17345: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17338: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17339: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17340: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17341: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17342: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17343: -- 5132302
17344: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17345: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17346:
17340: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17341: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17342: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17343: -- 5132302
17344: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17345: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17346:
17347: END IF;
17348:
17341: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17342: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17343: -- 5132302
17344: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17345: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17346:
17347: END IF;
17348:
17349: -- 4955764
17346:
17347: END IF;
17348:
17349: -- 4955764
17350: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17351: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17352:
17353:
17354: XLA_AE_LINES_PKG.ValidateCurrentLine;
17350: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17351: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17352:
17353:
17354: XLA_AE_LINES_PKG.ValidateCurrentLine;
17355: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17356:
17357: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17358: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17351: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17352:
17353:
17354: XLA_AE_LINES_PKG.ValidateCurrentLine;
17355: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17356:
17357: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17358: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17359: ,p_balance_type_code => l_balance_type_code);
17490: --
17491: -- bulk performance
17492: --
17493: l_balance_type_code VARCHAR2(1);
17494: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
17495: l_log_module VARCHAR2(240);
17496:
17497: --
17498: -- Upgrade strategy
17558: ') = 'REV'
17559: THEN
17560:
17561: --
17562: XLA_AE_LINES_PKG.SetNewLine;
17563:
17564: p_balance_type_code := l_balance_type_code;
17565: -- set the flag so later we will know whether the gain loss line needs to be created
17566:
17570:
17571: --
17572: -- bulk performance
17573: --
17574: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
17575: p_header_num => 0); -- 4262811
17576: --
17577: -- set accounting line options
17578: --
17575: p_header_num => 0); -- 4262811
17576: --
17577: -- set accounting line options
17578: --
17579: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
17580: p_natural_side_code => 'C'
17581: , p_gain_or_loss_flag => 'N'
17582: , p_gl_transfer_mode_code => 'S'
17583: , p_acct_entry_type_code => 'A'
17589: --
17590: --
17591: -- set accounting line type info
17592: --
17593: xla_ae_lines_pkg.SetAcctLineType
17594: (p_component_type => l_component_type
17595: ,p_event_type_code => l_event_type_code
17596: ,p_line_definition_owner_code => l_line_definition_owner_code
17597: ,p_line_definition_code => l_line_definition_code
17603: ,p_event_class_code => l_event_class_code);
17604: --
17605: -- set accounting class
17606: --
17607: xla_ae_lines_pkg.SetAcctClass(
17608: p_accounting_class_code => 'REVENUE'
17609: , p_ae_header_id => l_ae_header_id
17610: );
17611:
17611:
17612: --
17613: -- set rounding class
17614: --
17615: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17616: 'RECEIVABLE';
17617:
17618: --
17619: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17615: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17616: 'RECEIVABLE';
17617:
17618: --
17619: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17620: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17621: --
17622: -- bulk performance
17623: --
17616: 'RECEIVABLE';
17617:
17618: --
17619: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17620: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17621: --
17622: -- bulk performance
17623: --
17624: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17620: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17621: --
17622: -- bulk performance
17623: --
17624: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17625:
17626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17627: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17628:
17622: -- bulk performance
17623: --
17624: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17625:
17626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17627: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17628:
17629: -- 4955764
17630: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17627: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
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('header_index'));
17632:
17633: -- 4458381 Public Sector Enh
17634:
17660: l_rec_acct_attrs.array_num_value(10) := p_source_24;
17661: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
17662: l_rec_acct_attrs.array_char_value(11) := p_source_25;
17663:
17664: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17665: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17666:
17667: ---------------------------------------------------------------------------------------------------------------
17668: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17661: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
17662: l_rec_acct_attrs.array_char_value(11) := p_source_25;
17663:
17664: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17665: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17666:
17667: ---------------------------------------------------------------------------------------------------------------
17668: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17669: ---------------------------------------------------------------------------------------------------------------
17664: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17665: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17666:
17667: ---------------------------------------------------------------------------------------------------------------
17668: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17669: ---------------------------------------------------------------------------------------------------------------
17670: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17671:
17672: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17666:
17667: ---------------------------------------------------------------------------------------------------------------
17668: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17669: ---------------------------------------------------------------------------------------------------------------
17670: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17671:
17672: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17673: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17674:
17668: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17669: ---------------------------------------------------------------------------------------------------------------
17670: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17671:
17672: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17673: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17674:
17675: IF xla_accounting_cache_pkg.GetValueChar
17676: (p_source_code => 'LEDGER_CATEGORY_CODE'
17669: ---------------------------------------------------------------------------------------------------------------
17670: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17671:
17672: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17673: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17674:
17675: IF xla_accounting_cache_pkg.GetValueChar
17676: (p_source_code => 'LEDGER_CATEGORY_CODE'
17677: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
17680: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
17681: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
17682: )
17683: THEN
17684: xla_ae_lines_pkg.BflowUpgEntry
17685: (p_business_method_code => l_bflow_method_code
17686: ,p_business_class_code => l_bflow_class_code
17687: ,p_balance_type => l_balance_type_code);
17688: ELSE
17720: , x_value_type_code => l_adr_value_type_code
17721: , p_side => 'NA'
17722: );
17723:
17724: xla_ae_lines_pkg.set_ccid(
17725: p_code_combination_id => l_ccid
17726: , p_value_type_code => l_adr_value_type_code
17727: , p_transaction_coa_id => l_adr_transaction_coa_id
17728: , p_accounting_coa_id => l_adr_accounting_coa_id
17756: xla_accounting_err_pkg.build_message
17757: (p_appli_s_name => 'XLA'
17758: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
17759: ,p_token_1 => 'LINE_NUMBER'
17760: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
17761: ,p_token_2 => 'LINE_TYPE_NAME'
17762: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
17763: l_component_type
17764: ,l_component_code
17792: --
17793: --
17794: ------------------------------------------------------------------------------------------------
17795: -- 4219869 Business Flow
17796: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17797: -- Prior Entry. Currently, the following code is always generated.
17798: ------------------------------------------------------------------------------------------------
17799: XLA_AE_LINES_PKG.ValidateCurrentLine;
17800:
17795: -- 4219869 Business Flow
17796: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17797: -- Prior Entry. Currently, the following code is always generated.
17798: ------------------------------------------------------------------------------------------------
17799: XLA_AE_LINES_PKG.ValidateCurrentLine;
17800:
17801: ------------------------------------------------------------------------------------
17802: -- 4219869 Business Flow
17803: -- Populated credit and debit amounts -- Need to generate this within IF
17801: ------------------------------------------------------------------------------------
17802: -- 4219869 Business Flow
17803: -- Populated credit and debit amounts -- Need to generate this within IF
17804: ------------------------------------------------------------------------------------
17805: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17806:
17807: ----------------------------------------------------------------------------------
17808: -- 4219869 Business Flow
17809: -- Update journal entry status -- Need to generate this within IF
17833: -- To allow MPA report to determine if it should generate report process
17834: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17835: ------------------------------------------------------------------------------------------
17836:
17837: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17838: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17839: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17840: -- call ADRs
17841: -- Bug 4922099
17834: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17835: ------------------------------------------------------------------------------------------
17836:
17837: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17838: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17839: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17840: -- call ADRs
17841: -- Bug 4922099
17842: --
17858: , x_value_type_code => l_adr_value_type_code
17859: , p_side => 'NA'
17860: );
17861:
17862: xla_ae_lines_pkg.set_ccid(
17863: p_code_combination_id => l_ccid
17864: , p_value_type_code => l_adr_value_type_code
17865: , p_transaction_coa_id => l_adr_transaction_coa_id
17866: , p_accounting_coa_id => l_adr_accounting_coa_id
17881:
17882: --
17883: -- Update the line information that should be overwritten
17884: --
17885: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17886: p_header_num => 1);
17887: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17888:
17889: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17883: -- Update the line information that should be overwritten
17884: --
17885: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17886: p_header_num => 1);
17887: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17888:
17889: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17890:
17891: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17885: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17886: p_header_num => 1);
17887: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17888:
17889: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17890:
17891: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17892: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17893: END IF;
17888:
17889: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17890:
17891: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17892: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17893: END IF;
17894:
17895: --
17896: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17895: --
17896: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17897: --
17898: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
17899: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
17900: ELSE
17901: ---------------------------------------------------------------------------------------------------
17902: -- 4262811a Switch Sign
17903: ---------------------------------------------------------------------------------------------------
17900: ELSE
17901: ---------------------------------------------------------------------------------------------------
17902: -- 4262811a Switch Sign
17903: ---------------------------------------------------------------------------------------------------
17904: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17906: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17908: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17901: ---------------------------------------------------------------------------------------------------
17902: -- 4262811a Switch Sign
17903: ---------------------------------------------------------------------------------------------------
17904: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17906: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17908: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17909: -- 5132302
17902: -- 4262811a Switch Sign
17903: ---------------------------------------------------------------------------------------------------
17904: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17906: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17908: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17909: -- 5132302
17910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17903: ---------------------------------------------------------------------------------------------------
17904: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17906: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17908: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17909: -- 5132302
17910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17911: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17904: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17906: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17908: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17909: -- 5132302
17910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17911: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17912:
17906: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17908: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17909: -- 5132302
17910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17911: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17912:
17913: END IF;
17914:
17907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17908: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17909: -- 5132302
17910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17911: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17912:
17913: END IF;
17914:
17915: -- 4955764
17912:
17913: END IF;
17914:
17915: -- 4955764
17916: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17917: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17918:
17919:
17920: XLA_AE_LINES_PKG.ValidateCurrentLine;
17916: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17917: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17918:
17919:
17920: XLA_AE_LINES_PKG.ValidateCurrentLine;
17921: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17922:
17923: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17924: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17917: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17918:
17919:
17920: XLA_AE_LINES_PKG.ValidateCurrentLine;
17921: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17922:
17923: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17924: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17925: ,p_balance_type_code => l_balance_type_code);
18058: --
18059: -- bulk performance
18060: --
18061: l_balance_type_code VARCHAR2(1);
18062: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
18063: l_log_module VARCHAR2(240);
18064:
18065: --
18066: -- Upgrade strategy
18126: ') = 'CHARGES'
18127: THEN
18128:
18129: --
18130: XLA_AE_LINES_PKG.SetNewLine;
18131:
18132: p_balance_type_code := l_balance_type_code;
18133: -- set the flag so later we will know whether the gain loss line needs to be created
18134:
18138:
18139: --
18140: -- bulk performance
18141: --
18142: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
18143: p_header_num => 0); -- 4262811
18144: --
18145: -- set accounting line options
18146: --
18143: p_header_num => 0); -- 4262811
18144: --
18145: -- set accounting line options
18146: --
18147: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
18148: p_natural_side_code => 'C'
18149: , p_gain_or_loss_flag => 'N'
18150: , p_gl_transfer_mode_code => 'S'
18151: , p_acct_entry_type_code => 'A'
18157: --
18158: --
18159: -- set accounting line type info
18160: --
18161: xla_ae_lines_pkg.SetAcctLineType
18162: (p_component_type => l_component_type
18163: ,p_event_type_code => l_event_type_code
18164: ,p_line_definition_owner_code => l_line_definition_owner_code
18165: ,p_line_definition_code => l_line_definition_code
18171: ,p_event_class_code => l_event_class_code);
18172: --
18173: -- set accounting class
18174: --
18175: xla_ae_lines_pkg.SetAcctClass(
18176: p_accounting_class_code => 'CHARGES'
18177: , p_ae_header_id => l_ae_header_id
18178: );
18179:
18179:
18180: --
18181: -- set rounding class
18182: --
18183: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18184: 'RECEIVABLE';
18185:
18186: --
18187: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18183: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18184: 'RECEIVABLE';
18185:
18186: --
18187: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18188: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18189: --
18190: -- bulk performance
18191: --
18184: 'RECEIVABLE';
18185:
18186: --
18187: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18188: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18189: --
18190: -- bulk performance
18191: --
18192: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18188: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18189: --
18190: -- bulk performance
18191: --
18192: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18193:
18194: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18195: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18196:
18190: -- bulk performance
18191: --
18192: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18193:
18194: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18195: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18196:
18197: -- 4955764
18198: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18194: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18195: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18196:
18197: -- 4955764
18198: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18199: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
18200:
18201: -- 4458381 Public Sector Enh
18202:
18230: l_rec_acct_attrs.array_char_value(11) := p_source_25;
18231: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
18232: l_rec_acct_attrs.array_num_value(12) := p_source_48;
18233:
18234: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18235: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18236:
18237: ---------------------------------------------------------------------------------------------------------------
18238: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18231: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
18232: l_rec_acct_attrs.array_num_value(12) := p_source_48;
18233:
18234: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18235: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18236:
18237: ---------------------------------------------------------------------------------------------------------------
18238: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18239: ---------------------------------------------------------------------------------------------------------------
18234: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18235: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18236:
18237: ---------------------------------------------------------------------------------------------------------------
18238: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18239: ---------------------------------------------------------------------------------------------------------------
18240: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18241:
18242: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18236:
18237: ---------------------------------------------------------------------------------------------------------------
18238: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18239: ---------------------------------------------------------------------------------------------------------------
18240: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18241:
18242: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18243: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18244:
18238: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18239: ---------------------------------------------------------------------------------------------------------------
18240: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18241:
18242: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18243: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18244:
18245: IF xla_accounting_cache_pkg.GetValueChar
18246: (p_source_code => 'LEDGER_CATEGORY_CODE'
18239: ---------------------------------------------------------------------------------------------------------------
18240: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18241:
18242: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18243: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18244:
18245: IF xla_accounting_cache_pkg.GetValueChar
18246: (p_source_code => 'LEDGER_CATEGORY_CODE'
18247: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
18250: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
18251: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
18252: )
18253: THEN
18254: xla_ae_lines_pkg.BflowUpgEntry
18255: (p_business_method_code => l_bflow_method_code
18256: ,p_business_class_code => l_bflow_class_code
18257: ,p_balance_type => l_balance_type_code);
18258: ELSE
18290: , x_value_type_code => l_adr_value_type_code
18291: , p_side => 'NA'
18292: );
18293:
18294: xla_ae_lines_pkg.set_ccid(
18295: p_code_combination_id => l_ccid
18296: , p_value_type_code => l_adr_value_type_code
18297: , p_transaction_coa_id => l_adr_transaction_coa_id
18298: , p_accounting_coa_id => l_adr_accounting_coa_id
18326: xla_accounting_err_pkg.build_message
18327: (p_appli_s_name => 'XLA'
18328: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
18329: ,p_token_1 => 'LINE_NUMBER'
18330: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
18331: ,p_token_2 => 'LINE_TYPE_NAME'
18332: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
18333: l_component_type
18334: ,l_component_code
18362: --
18363: --
18364: ------------------------------------------------------------------------------------------------
18365: -- 4219869 Business Flow
18366: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18367: -- Prior Entry. Currently, the following code is always generated.
18368: ------------------------------------------------------------------------------------------------
18369: XLA_AE_LINES_PKG.ValidateCurrentLine;
18370:
18365: -- 4219869 Business Flow
18366: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18367: -- Prior Entry. Currently, the following code is always generated.
18368: ------------------------------------------------------------------------------------------------
18369: XLA_AE_LINES_PKG.ValidateCurrentLine;
18370:
18371: ------------------------------------------------------------------------------------
18372: -- 4219869 Business Flow
18373: -- Populated credit and debit amounts -- Need to generate this within IF
18371: ------------------------------------------------------------------------------------
18372: -- 4219869 Business Flow
18373: -- Populated credit and debit amounts -- Need to generate this within IF
18374: ------------------------------------------------------------------------------------
18375: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18376:
18377: ----------------------------------------------------------------------------------
18378: -- 4219869 Business Flow
18379: -- Update journal entry status -- Need to generate this within IF
18403: -- To allow MPA report to determine if it should generate report process
18404: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18405: ------------------------------------------------------------------------------------------
18406:
18407: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18408: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18409: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18410: -- call ADRs
18411: -- Bug 4922099
18404: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18405: ------------------------------------------------------------------------------------------
18406:
18407: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18408: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18409: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18410: -- call ADRs
18411: -- Bug 4922099
18412: --
18428: , x_value_type_code => l_adr_value_type_code
18429: , p_side => 'NA'
18430: );
18431:
18432: xla_ae_lines_pkg.set_ccid(
18433: p_code_combination_id => l_ccid
18434: , p_value_type_code => l_adr_value_type_code
18435: , p_transaction_coa_id => l_adr_transaction_coa_id
18436: , p_accounting_coa_id => l_adr_accounting_coa_id
18451:
18452: --
18453: -- Update the line information that should be overwritten
18454: --
18455: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18456: p_header_num => 1);
18457: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18458:
18459: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18453: -- Update the line information that should be overwritten
18454: --
18455: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18456: p_header_num => 1);
18457: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18458:
18459: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18460:
18461: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18455: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18456: p_header_num => 1);
18457: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18458:
18459: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18460:
18461: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18462: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18463: END IF;
18458:
18459: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18460:
18461: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18462: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18463: END IF;
18464:
18465: --
18466: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18465: --
18466: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18467: --
18468: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
18469: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
18470: ELSE
18471: ---------------------------------------------------------------------------------------------------
18472: -- 4262811a Switch Sign
18473: ---------------------------------------------------------------------------------------------------
18470: ELSE
18471: ---------------------------------------------------------------------------------------------------
18472: -- 4262811a Switch Sign
18473: ---------------------------------------------------------------------------------------------------
18474: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18475: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18476: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18477: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18478: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18471: ---------------------------------------------------------------------------------------------------
18472: -- 4262811a Switch Sign
18473: ---------------------------------------------------------------------------------------------------
18474: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18475: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18476: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18477: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18478: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18479: -- 5132302
18472: -- 4262811a Switch Sign
18473: ---------------------------------------------------------------------------------------------------
18474: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18475: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18476: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18477: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18478: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18479: -- 5132302
18480: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18473: ---------------------------------------------------------------------------------------------------
18474: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18475: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18476: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18477: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18478: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18479: -- 5132302
18480: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18481: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18474: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18475: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18476: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18477: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18478: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18479: -- 5132302
18480: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18481: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18482:
18476: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18477: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18478: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18479: -- 5132302
18480: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18481: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18482:
18483: END IF;
18484:
18477: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18478: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18479: -- 5132302
18480: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18481: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18482:
18483: END IF;
18484:
18485: -- 4955764
18482:
18483: END IF;
18484:
18485: -- 4955764
18486: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18487: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18488:
18489:
18490: XLA_AE_LINES_PKG.ValidateCurrentLine;
18486: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18487: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18488:
18489:
18490: XLA_AE_LINES_PKG.ValidateCurrentLine;
18491: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18492:
18493: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18494: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18487: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18488:
18489:
18490: XLA_AE_LINES_PKG.ValidateCurrentLine;
18491: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18492:
18493: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18494: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18495: ,p_balance_type_code => l_balance_type_code);
18628: --
18629: -- bulk performance
18630: --
18631: l_balance_type_code VARCHAR2(1);
18632: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
18633: l_log_module VARCHAR2(240);
18634:
18635: --
18636: -- Upgrade strategy
18696: ') = 'FREIGHT'
18697: THEN
18698:
18699: --
18700: XLA_AE_LINES_PKG.SetNewLine;
18701:
18702: p_balance_type_code := l_balance_type_code;
18703: -- set the flag so later we will know whether the gain loss line needs to be created
18704:
18708:
18709: --
18710: -- bulk performance
18711: --
18712: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
18713: p_header_num => 0); -- 4262811
18714: --
18715: -- set accounting line options
18716: --
18713: p_header_num => 0); -- 4262811
18714: --
18715: -- set accounting line options
18716: --
18717: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
18718: p_natural_side_code => 'C'
18719: , p_gain_or_loss_flag => 'N'
18720: , p_gl_transfer_mode_code => 'S'
18721: , p_acct_entry_type_code => 'A'
18727: --
18728: --
18729: -- set accounting line type info
18730: --
18731: xla_ae_lines_pkg.SetAcctLineType
18732: (p_component_type => l_component_type
18733: ,p_event_type_code => l_event_type_code
18734: ,p_line_definition_owner_code => l_line_definition_owner_code
18735: ,p_line_definition_code => l_line_definition_code
18741: ,p_event_class_code => l_event_class_code);
18742: --
18743: -- set accounting class
18744: --
18745: xla_ae_lines_pkg.SetAcctClass(
18746: p_accounting_class_code => 'FREIGHT'
18747: , p_ae_header_id => l_ae_header_id
18748: );
18749:
18749:
18750: --
18751: -- set rounding class
18752: --
18753: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18754: 'RECEIVABLE';
18755:
18756: --
18757: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18753: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18754: 'RECEIVABLE';
18755:
18756: --
18757: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18758: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18759: --
18760: -- bulk performance
18761: --
18754: 'RECEIVABLE';
18755:
18756: --
18757: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18758: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18759: --
18760: -- bulk performance
18761: --
18762: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18758: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18759: --
18760: -- bulk performance
18761: --
18762: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18763:
18764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18765: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18766:
18760: -- bulk performance
18761: --
18762: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18763:
18764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18765: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18766:
18767: -- 4955764
18768: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18765: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18766:
18767: -- 4955764
18768: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18769: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
18770:
18771: -- 4458381 Public Sector Enh
18772:
18800: l_rec_acct_attrs.array_char_value(11) := p_source_25;
18801: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
18802: l_rec_acct_attrs.array_num_value(12) := p_source_48;
18803:
18804: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18805: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18806:
18807: ---------------------------------------------------------------------------------------------------------------
18808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18801: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
18802: l_rec_acct_attrs.array_num_value(12) := p_source_48;
18803:
18804: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18805: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18806:
18807: ---------------------------------------------------------------------------------------------------------------
18808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18809: ---------------------------------------------------------------------------------------------------------------
18804: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18805: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18806:
18807: ---------------------------------------------------------------------------------------------------------------
18808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18809: ---------------------------------------------------------------------------------------------------------------
18810: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18811:
18812: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18806:
18807: ---------------------------------------------------------------------------------------------------------------
18808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18809: ---------------------------------------------------------------------------------------------------------------
18810: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18811:
18812: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18813: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18814:
18808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18809: ---------------------------------------------------------------------------------------------------------------
18810: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18811:
18812: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18813: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18814:
18815: IF xla_accounting_cache_pkg.GetValueChar
18816: (p_source_code => 'LEDGER_CATEGORY_CODE'
18809: ---------------------------------------------------------------------------------------------------------------
18810: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18811:
18812: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18813: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18814:
18815: IF xla_accounting_cache_pkg.GetValueChar
18816: (p_source_code => 'LEDGER_CATEGORY_CODE'
18817: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
18820: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
18821: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
18822: )
18823: THEN
18824: xla_ae_lines_pkg.BflowUpgEntry
18825: (p_business_method_code => l_bflow_method_code
18826: ,p_business_class_code => l_bflow_class_code
18827: ,p_balance_type => l_balance_type_code);
18828: ELSE
18860: , x_value_type_code => l_adr_value_type_code
18861: , p_side => 'NA'
18862: );
18863:
18864: xla_ae_lines_pkg.set_ccid(
18865: p_code_combination_id => l_ccid
18866: , p_value_type_code => l_adr_value_type_code
18867: , p_transaction_coa_id => l_adr_transaction_coa_id
18868: , p_accounting_coa_id => l_adr_accounting_coa_id
18896: xla_accounting_err_pkg.build_message
18897: (p_appli_s_name => 'XLA'
18898: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
18899: ,p_token_1 => 'LINE_NUMBER'
18900: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
18901: ,p_token_2 => 'LINE_TYPE_NAME'
18902: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
18903: l_component_type
18904: ,l_component_code
18932: --
18933: --
18934: ------------------------------------------------------------------------------------------------
18935: -- 4219869 Business Flow
18936: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18937: -- Prior Entry. Currently, the following code is always generated.
18938: ------------------------------------------------------------------------------------------------
18939: XLA_AE_LINES_PKG.ValidateCurrentLine;
18940:
18935: -- 4219869 Business Flow
18936: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18937: -- Prior Entry. Currently, the following code is always generated.
18938: ------------------------------------------------------------------------------------------------
18939: XLA_AE_LINES_PKG.ValidateCurrentLine;
18940:
18941: ------------------------------------------------------------------------------------
18942: -- 4219869 Business Flow
18943: -- Populated credit and debit amounts -- Need to generate this within IF
18941: ------------------------------------------------------------------------------------
18942: -- 4219869 Business Flow
18943: -- Populated credit and debit amounts -- Need to generate this within IF
18944: ------------------------------------------------------------------------------------
18945: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18946:
18947: ----------------------------------------------------------------------------------
18948: -- 4219869 Business Flow
18949: -- Update journal entry status -- Need to generate this within IF
18973: -- To allow MPA report to determine if it should generate report process
18974: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18975: ------------------------------------------------------------------------------------------
18976:
18977: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18978: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18979: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18980: -- call ADRs
18981: -- Bug 4922099
18974: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18975: ------------------------------------------------------------------------------------------
18976:
18977: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18978: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18979: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18980: -- call ADRs
18981: -- Bug 4922099
18982: --
18998: , x_value_type_code => l_adr_value_type_code
18999: , p_side => 'NA'
19000: );
19001:
19002: xla_ae_lines_pkg.set_ccid(
19003: p_code_combination_id => l_ccid
19004: , p_value_type_code => l_adr_value_type_code
19005: , p_transaction_coa_id => l_adr_transaction_coa_id
19006: , p_accounting_coa_id => l_adr_accounting_coa_id
19021:
19022: --
19023: -- Update the line information that should be overwritten
19024: --
19025: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19026: p_header_num => 1);
19027: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19028:
19029: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19023: -- Update the line information that should be overwritten
19024: --
19025: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19026: p_header_num => 1);
19027: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19028:
19029: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19030:
19031: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19025: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19026: p_header_num => 1);
19027: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19028:
19029: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19030:
19031: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19032: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19033: END IF;
19028:
19029: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19030:
19031: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19032: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19033: END IF;
19034:
19035: --
19036: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19035: --
19036: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19037: --
19038: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
19039: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
19040: ELSE
19041: ---------------------------------------------------------------------------------------------------
19042: -- 4262811a Switch Sign
19043: ---------------------------------------------------------------------------------------------------
19040: ELSE
19041: ---------------------------------------------------------------------------------------------------
19042: -- 4262811a Switch Sign
19043: ---------------------------------------------------------------------------------------------------
19044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19041: ---------------------------------------------------------------------------------------------------
19042: -- 4262811a Switch Sign
19043: ---------------------------------------------------------------------------------------------------
19044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19049: -- 5132302
19042: -- 4262811a Switch Sign
19043: ---------------------------------------------------------------------------------------------------
19044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19049: -- 5132302
19050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19043: ---------------------------------------------------------------------------------------------------
19044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19049: -- 5132302
19050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19051: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19049: -- 5132302
19050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19051: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19052:
19046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19049: -- 5132302
19050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19051: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19052:
19053: END IF;
19054:
19047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19049: -- 5132302
19050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19051: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19052:
19053: END IF;
19054:
19055: -- 4955764
19052:
19053: END IF;
19054:
19055: -- 4955764
19056: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19057: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19058:
19059:
19060: XLA_AE_LINES_PKG.ValidateCurrentLine;
19056: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19057: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19058:
19059:
19060: XLA_AE_LINES_PKG.ValidateCurrentLine;
19061: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19062:
19063: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19064: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19057: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19058:
19059:
19060: XLA_AE_LINES_PKG.ValidateCurrentLine;
19061: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19062:
19063: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19064: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19065: ,p_balance_type_code => l_balance_type_code);
19200: --
19201: -- bulk performance
19202: --
19203: l_balance_type_code VARCHAR2(1);
19204: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
19205: l_log_module VARCHAR2(240);
19206:
19207: --
19208: -- Upgrade strategy
19269: p_source_49 IS NULL
19270: THEN
19271:
19272: --
19273: XLA_AE_LINES_PKG.SetNewLine;
19274:
19275: p_balance_type_code := l_balance_type_code;
19276: -- set the flag so later we will know whether the gain loss line needs to be created
19277:
19281:
19282: --
19283: -- bulk performance
19284: --
19285: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
19286: p_header_num => 0); -- 4262811
19287: --
19288: -- set accounting line options
19289: --
19286: p_header_num => 0); -- 4262811
19287: --
19288: -- set accounting line options
19289: --
19290: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
19291: p_natural_side_code => 'C'
19292: , p_gain_or_loss_flag => 'N'
19293: , p_gl_transfer_mode_code => 'S'
19294: , p_acct_entry_type_code => 'A'
19300: --
19301: --
19302: -- set accounting line type info
19303: --
19304: xla_ae_lines_pkg.SetAcctLineType
19305: (p_component_type => l_component_type
19306: ,p_event_type_code => l_event_type_code
19307: ,p_line_definition_owner_code => l_line_definition_owner_code
19308: ,p_line_definition_code => l_line_definition_code
19314: ,p_event_class_code => l_event_class_code);
19315: --
19316: -- set accounting class
19317: --
19318: xla_ae_lines_pkg.SetAcctClass(
19319: p_accounting_class_code => 'REVENUE'
19320: , p_ae_header_id => l_ae_header_id
19321: );
19322:
19322:
19323: --
19324: -- set rounding class
19325: --
19326: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19327: 'RECEIVABLE';
19328:
19329: --
19330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19326: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19327: 'RECEIVABLE';
19328:
19329: --
19330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19332: --
19333: -- bulk performance
19334: --
19327: 'RECEIVABLE';
19328:
19329: --
19330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19332: --
19333: -- bulk performance
19334: --
19335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19332: --
19333: -- bulk performance
19334: --
19335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19336:
19337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19339:
19333: -- bulk performance
19334: --
19335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19336:
19337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19339:
19340: -- 4955764
19341: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19339:
19340: -- 4955764
19341: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19342: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
19343:
19344: -- 4458381 Public Sector Enh
19345:
19373: l_rec_acct_attrs.array_char_value(11) := p_source_25;
19374: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19375: l_rec_acct_attrs.array_num_value(12) := p_source_48;
19376:
19377: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19378: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19379:
19380: ---------------------------------------------------------------------------------------------------------------
19381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19374: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19375: l_rec_acct_attrs.array_num_value(12) := p_source_48;
19376:
19377: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19378: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19379:
19380: ---------------------------------------------------------------------------------------------------------------
19381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19382: ---------------------------------------------------------------------------------------------------------------
19377: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19378: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19379:
19380: ---------------------------------------------------------------------------------------------------------------
19381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19382: ---------------------------------------------------------------------------------------------------------------
19383: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19384:
19385: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19379:
19380: ---------------------------------------------------------------------------------------------------------------
19381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19382: ---------------------------------------------------------------------------------------------------------------
19383: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19384:
19385: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19386: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19387:
19381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19382: ---------------------------------------------------------------------------------------------------------------
19383: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19384:
19385: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19386: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19387:
19388: IF xla_accounting_cache_pkg.GetValueChar
19389: (p_source_code => 'LEDGER_CATEGORY_CODE'
19382: ---------------------------------------------------------------------------------------------------------------
19383: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19384:
19385: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19386: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19387:
19388: IF xla_accounting_cache_pkg.GetValueChar
19389: (p_source_code => 'LEDGER_CATEGORY_CODE'
19390: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
19393: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
19394: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
19395: )
19396: THEN
19397: xla_ae_lines_pkg.BflowUpgEntry
19398: (p_business_method_code => l_bflow_method_code
19399: ,p_business_class_code => l_bflow_class_code
19400: ,p_balance_type => l_balance_type_code);
19401: ELSE
19433: , x_value_type_code => l_adr_value_type_code
19434: , p_side => 'NA'
19435: );
19436:
19437: xla_ae_lines_pkg.set_ccid(
19438: p_code_combination_id => l_ccid
19439: , p_value_type_code => l_adr_value_type_code
19440: , p_transaction_coa_id => l_adr_transaction_coa_id
19441: , p_accounting_coa_id => l_adr_accounting_coa_id
19469: xla_accounting_err_pkg.build_message
19470: (p_appli_s_name => 'XLA'
19471: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
19472: ,p_token_1 => 'LINE_NUMBER'
19473: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
19474: ,p_token_2 => 'LINE_TYPE_NAME'
19475: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
19476: l_component_type
19477: ,l_component_code
19505: --
19506: --
19507: ------------------------------------------------------------------------------------------------
19508: -- 4219869 Business Flow
19509: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19510: -- Prior Entry. Currently, the following code is always generated.
19511: ------------------------------------------------------------------------------------------------
19512: XLA_AE_LINES_PKG.ValidateCurrentLine;
19513:
19508: -- 4219869 Business Flow
19509: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19510: -- Prior Entry. Currently, the following code is always generated.
19511: ------------------------------------------------------------------------------------------------
19512: XLA_AE_LINES_PKG.ValidateCurrentLine;
19513:
19514: ------------------------------------------------------------------------------------
19515: -- 4219869 Business Flow
19516: -- Populated credit and debit amounts -- Need to generate this within IF
19514: ------------------------------------------------------------------------------------
19515: -- 4219869 Business Flow
19516: -- Populated credit and debit amounts -- Need to generate this within IF
19517: ------------------------------------------------------------------------------------
19518: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19519:
19520: ----------------------------------------------------------------------------------
19521: -- 4219869 Business Flow
19522: -- Update journal entry status -- Need to generate this within IF
19546: -- To allow MPA report to determine if it should generate report process
19547: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19548: ------------------------------------------------------------------------------------------
19549:
19550: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19551: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19552: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19553: -- call ADRs
19554: -- Bug 4922099
19547: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19548: ------------------------------------------------------------------------------------------
19549:
19550: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19551: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19552: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19553: -- call ADRs
19554: -- Bug 4922099
19555: --
19571: , x_value_type_code => l_adr_value_type_code
19572: , p_side => 'NA'
19573: );
19574:
19575: xla_ae_lines_pkg.set_ccid(
19576: p_code_combination_id => l_ccid
19577: , p_value_type_code => l_adr_value_type_code
19578: , p_transaction_coa_id => l_adr_transaction_coa_id
19579: , p_accounting_coa_id => l_adr_accounting_coa_id
19594:
19595: --
19596: -- Update the line information that should be overwritten
19597: --
19598: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19599: p_header_num => 1);
19600: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19601:
19602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19596: -- Update the line information that should be overwritten
19597: --
19598: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19599: p_header_num => 1);
19600: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19601:
19602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19603:
19604: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19598: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19599: p_header_num => 1);
19600: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19601:
19602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19603:
19604: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19605: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19606: END IF;
19601:
19602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19603:
19604: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19605: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19606: END IF;
19607:
19608: --
19609: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19608: --
19609: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19610: --
19611: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
19612: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
19613: ELSE
19614: ---------------------------------------------------------------------------------------------------
19615: -- 4262811a Switch Sign
19616: ---------------------------------------------------------------------------------------------------
19613: ELSE
19614: ---------------------------------------------------------------------------------------------------
19615: -- 4262811a Switch Sign
19616: ---------------------------------------------------------------------------------------------------
19617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19614: ---------------------------------------------------------------------------------------------------
19615: -- 4262811a Switch Sign
19616: ---------------------------------------------------------------------------------------------------
19617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19622: -- 5132302
19615: -- 4262811a Switch Sign
19616: ---------------------------------------------------------------------------------------------------
19617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19622: -- 5132302
19623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19616: ---------------------------------------------------------------------------------------------------
19617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19622: -- 5132302
19623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19622: -- 5132302
19623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19625:
19619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19622: -- 5132302
19623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19625:
19626: END IF;
19627:
19620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19622: -- 5132302
19623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19625:
19626: END IF;
19627:
19628: -- 4955764
19625:
19626: END IF;
19627:
19628: -- 4955764
19629: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19630: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19631:
19632:
19633: XLA_AE_LINES_PKG.ValidateCurrentLine;
19629: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19630: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19631:
19632:
19633: XLA_AE_LINES_PKG.ValidateCurrentLine;
19634: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19635:
19636: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19637: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19630: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19631:
19632:
19633: XLA_AE_LINES_PKG.ValidateCurrentLine;
19634: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19635:
19636: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19637: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19638: ,p_balance_type_code => l_balance_type_code);
19771: --
19772: -- bulk performance
19773: --
19774: l_balance_type_code VARCHAR2(1);
19775: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
19776: l_log_module VARCHAR2(240);
19777:
19778: --
19779: -- Upgrade strategy
19839: ') = 'ROUND'
19840: THEN
19841:
19842: --
19843: XLA_AE_LINES_PKG.SetNewLine;
19844:
19845: p_balance_type_code := l_balance_type_code;
19846: -- set the flag so later we will know whether the gain loss line needs to be created
19847:
19851:
19852: --
19853: -- bulk performance
19854: --
19855: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
19856: p_header_num => 0); -- 4262811
19857: --
19858: -- set accounting line options
19859: --
19856: p_header_num => 0); -- 4262811
19857: --
19858: -- set accounting line options
19859: --
19860: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
19861: p_natural_side_code => 'C'
19862: , p_gain_or_loss_flag => 'N'
19863: , p_gl_transfer_mode_code => 'S'
19864: , p_acct_entry_type_code => 'A'
19870: --
19871: --
19872: -- set accounting line type info
19873: --
19874: xla_ae_lines_pkg.SetAcctLineType
19875: (p_component_type => l_component_type
19876: ,p_event_type_code => l_event_type_code
19877: ,p_line_definition_owner_code => l_line_definition_owner_code
19878: ,p_line_definition_code => l_line_definition_code
19884: ,p_event_class_code => l_event_class_code);
19885: --
19886: -- set accounting class
19887: --
19888: xla_ae_lines_pkg.SetAcctClass(
19889: p_accounting_class_code => 'ROUNDING'
19890: , p_ae_header_id => l_ae_header_id
19891: );
19892:
19892:
19893: --
19894: -- set rounding class
19895: --
19896: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19897: 'RECEIVABLE';
19898:
19899: --
19900: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19896: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19897: 'RECEIVABLE';
19898:
19899: --
19900: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19901: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19902: --
19903: -- bulk performance
19904: --
19897: 'RECEIVABLE';
19898:
19899: --
19900: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19901: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19902: --
19903: -- bulk performance
19904: --
19905: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19901: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19902: --
19903: -- bulk performance
19904: --
19905: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19906:
19907: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19908: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19909:
19903: -- bulk performance
19904: --
19905: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19906:
19907: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19908: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19909:
19910: -- 4955764
19911: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19907: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19908: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19909:
19910: -- 4955764
19911: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19912: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
19913:
19914: -- 4458381 Public Sector Enh
19915:
19943: l_rec_acct_attrs.array_char_value(11) := p_source_25;
19944: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19945: l_rec_acct_attrs.array_num_value(12) := p_source_48;
19946:
19947: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19948: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19949:
19950: ---------------------------------------------------------------------------------------------------------------
19951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19944: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19945: l_rec_acct_attrs.array_num_value(12) := p_source_48;
19946:
19947: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19948: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19949:
19950: ---------------------------------------------------------------------------------------------------------------
19951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19952: ---------------------------------------------------------------------------------------------------------------
19947: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19948: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19949:
19950: ---------------------------------------------------------------------------------------------------------------
19951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19952: ---------------------------------------------------------------------------------------------------------------
19953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19954:
19955: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19949:
19950: ---------------------------------------------------------------------------------------------------------------
19951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19952: ---------------------------------------------------------------------------------------------------------------
19953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19954:
19955: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19956: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19957:
19951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19952: ---------------------------------------------------------------------------------------------------------------
19953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19954:
19955: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19956: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19957:
19958: IF xla_accounting_cache_pkg.GetValueChar
19959: (p_source_code => 'LEDGER_CATEGORY_CODE'
19952: ---------------------------------------------------------------------------------------------------------------
19953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19954:
19955: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19956: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19957:
19958: IF xla_accounting_cache_pkg.GetValueChar
19959: (p_source_code => 'LEDGER_CATEGORY_CODE'
19960: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
19963: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
19964: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
19965: )
19966: THEN
19967: xla_ae_lines_pkg.BflowUpgEntry
19968: (p_business_method_code => l_bflow_method_code
19969: ,p_business_class_code => l_bflow_class_code
19970: ,p_balance_type => l_balance_type_code);
19971: ELSE
20003: , x_value_type_code => l_adr_value_type_code
20004: , p_side => 'NA'
20005: );
20006:
20007: xla_ae_lines_pkg.set_ccid(
20008: p_code_combination_id => l_ccid
20009: , p_value_type_code => l_adr_value_type_code
20010: , p_transaction_coa_id => l_adr_transaction_coa_id
20011: , p_accounting_coa_id => l_adr_accounting_coa_id
20039: xla_accounting_err_pkg.build_message
20040: (p_appli_s_name => 'XLA'
20041: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
20042: ,p_token_1 => 'LINE_NUMBER'
20043: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
20044: ,p_token_2 => 'LINE_TYPE_NAME'
20045: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
20046: l_component_type
20047: ,l_component_code
20075: --
20076: --
20077: ------------------------------------------------------------------------------------------------
20078: -- 4219869 Business Flow
20079: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20080: -- Prior Entry. Currently, the following code is always generated.
20081: ------------------------------------------------------------------------------------------------
20082: XLA_AE_LINES_PKG.ValidateCurrentLine;
20083:
20078: -- 4219869 Business Flow
20079: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20080: -- Prior Entry. Currently, the following code is always generated.
20081: ------------------------------------------------------------------------------------------------
20082: XLA_AE_LINES_PKG.ValidateCurrentLine;
20083:
20084: ------------------------------------------------------------------------------------
20085: -- 4219869 Business Flow
20086: -- Populated credit and debit amounts -- Need to generate this within IF
20084: ------------------------------------------------------------------------------------
20085: -- 4219869 Business Flow
20086: -- Populated credit and debit amounts -- Need to generate this within IF
20087: ------------------------------------------------------------------------------------
20088: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20089:
20090: ----------------------------------------------------------------------------------
20091: -- 4219869 Business Flow
20092: -- Update journal entry status -- Need to generate this within IF
20116: -- To allow MPA report to determine if it should generate report process
20117: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20118: ------------------------------------------------------------------------------------------
20119:
20120: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20121: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20122: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20123: -- call ADRs
20124: -- Bug 4922099
20117: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20118: ------------------------------------------------------------------------------------------
20119:
20120: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20121: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20122: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20123: -- call ADRs
20124: -- Bug 4922099
20125: --
20141: , x_value_type_code => l_adr_value_type_code
20142: , p_side => 'NA'
20143: );
20144:
20145: xla_ae_lines_pkg.set_ccid(
20146: p_code_combination_id => l_ccid
20147: , p_value_type_code => l_adr_value_type_code
20148: , p_transaction_coa_id => l_adr_transaction_coa_id
20149: , p_accounting_coa_id => l_adr_accounting_coa_id
20164:
20165: --
20166: -- Update the line information that should be overwritten
20167: --
20168: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20169: p_header_num => 1);
20170: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20171:
20172: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20166: -- Update the line information that should be overwritten
20167: --
20168: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20169: p_header_num => 1);
20170: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20171:
20172: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20173:
20174: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20168: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20169: p_header_num => 1);
20170: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20171:
20172: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20173:
20174: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20175: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20176: END IF;
20171:
20172: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20173:
20174: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20175: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20176: END IF;
20177:
20178: --
20179: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20178: --
20179: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20180: --
20181: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
20182: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
20183: ELSE
20184: ---------------------------------------------------------------------------------------------------
20185: -- 4262811a Switch Sign
20186: ---------------------------------------------------------------------------------------------------
20183: ELSE
20184: ---------------------------------------------------------------------------------------------------
20185: -- 4262811a Switch Sign
20186: ---------------------------------------------------------------------------------------------------
20187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20184: ---------------------------------------------------------------------------------------------------
20185: -- 4262811a Switch Sign
20186: ---------------------------------------------------------------------------------------------------
20187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20192: -- 5132302
20185: -- 4262811a Switch Sign
20186: ---------------------------------------------------------------------------------------------------
20187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20192: -- 5132302
20193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20186: ---------------------------------------------------------------------------------------------------
20187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20192: -- 5132302
20193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20187: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20188: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20192: -- 5132302
20193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20195:
20189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20192: -- 5132302
20193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20195:
20196: END IF;
20197:
20190: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20192: -- 5132302
20193: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20195:
20196: END IF;
20197:
20198: -- 4955764
20195:
20196: END IF;
20197:
20198: -- 4955764
20199: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20200: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20201:
20202:
20203: XLA_AE_LINES_PKG.ValidateCurrentLine;
20199: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20200: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20201:
20202:
20203: XLA_AE_LINES_PKG.ValidateCurrentLine;
20204: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20205:
20206: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20207: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20200: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20201:
20202:
20203: XLA_AE_LINES_PKG.ValidateCurrentLine;
20204: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20205:
20206: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20207: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20208: ,p_balance_type_code => l_balance_type_code);
20341: --
20342: -- bulk performance
20343: --
20344: l_balance_type_code VARCHAR2(1);
20345: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
20346: l_log_module VARCHAR2(240);
20347:
20348: --
20349: -- Upgrade strategy
20409: ') = 'TAX'
20410: THEN
20411:
20412: --
20413: XLA_AE_LINES_PKG.SetNewLine;
20414:
20415: p_balance_type_code := l_balance_type_code;
20416: -- set the flag so later we will know whether the gain loss line needs to be created
20417:
20421:
20422: --
20423: -- bulk performance
20424: --
20425: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
20426: p_header_num => 0); -- 4262811
20427: --
20428: -- set accounting line options
20429: --
20426: p_header_num => 0); -- 4262811
20427: --
20428: -- set accounting line options
20429: --
20430: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
20431: p_natural_side_code => 'C'
20432: , p_gain_or_loss_flag => 'N'
20433: , p_gl_transfer_mode_code => 'S'
20434: , p_acct_entry_type_code => 'A'
20440: --
20441: --
20442: -- set accounting line type info
20443: --
20444: xla_ae_lines_pkg.SetAcctLineType
20445: (p_component_type => l_component_type
20446: ,p_event_type_code => l_event_type_code
20447: ,p_line_definition_owner_code => l_line_definition_owner_code
20448: ,p_line_definition_code => l_line_definition_code
20454: ,p_event_class_code => l_event_class_code);
20455: --
20456: -- set accounting class
20457: --
20458: xla_ae_lines_pkg.SetAcctClass(
20459: p_accounting_class_code => 'TAX'
20460: , p_ae_header_id => l_ae_header_id
20461: );
20462:
20462:
20463: --
20464: -- set rounding class
20465: --
20466: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20467: 'RECEIVABLE';
20468:
20469: --
20470: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20466: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20467: 'RECEIVABLE';
20468:
20469: --
20470: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20471: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20472: --
20473: -- bulk performance
20474: --
20467: 'RECEIVABLE';
20468:
20469: --
20470: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20471: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20472: --
20473: -- bulk performance
20474: --
20475: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20471: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20472: --
20473: -- bulk performance
20474: --
20475: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20476:
20477: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20478: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20479:
20473: -- bulk performance
20474: --
20475: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20476:
20477: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20478: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20479:
20480: -- 4955764
20481: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20477: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20478: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20479:
20480: -- 4955764
20481: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20482: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
20483:
20484: -- 4458381 Public Sector Enh
20485:
20513: l_rec_acct_attrs.array_char_value(11) := p_source_25;
20514: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20515: l_rec_acct_attrs.array_num_value(12) := p_source_48;
20516:
20517: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20518: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20519:
20520: ---------------------------------------------------------------------------------------------------------------
20521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20514: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20515: l_rec_acct_attrs.array_num_value(12) := p_source_48;
20516:
20517: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20518: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20519:
20520: ---------------------------------------------------------------------------------------------------------------
20521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20522: ---------------------------------------------------------------------------------------------------------------
20517: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20518: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20519:
20520: ---------------------------------------------------------------------------------------------------------------
20521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20522: ---------------------------------------------------------------------------------------------------------------
20523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20524:
20525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20519:
20520: ---------------------------------------------------------------------------------------------------------------
20521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20522: ---------------------------------------------------------------------------------------------------------------
20523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20524:
20525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20526: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20527:
20521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20522: ---------------------------------------------------------------------------------------------------------------
20523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20524:
20525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20526: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20527:
20528: IF xla_accounting_cache_pkg.GetValueChar
20529: (p_source_code => 'LEDGER_CATEGORY_CODE'
20522: ---------------------------------------------------------------------------------------------------------------
20523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20524:
20525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20526: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20527:
20528: IF xla_accounting_cache_pkg.GetValueChar
20529: (p_source_code => 'LEDGER_CATEGORY_CODE'
20530: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
20533: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
20534: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
20535: )
20536: THEN
20537: xla_ae_lines_pkg.BflowUpgEntry
20538: (p_business_method_code => l_bflow_method_code
20539: ,p_business_class_code => l_bflow_class_code
20540: ,p_balance_type => l_balance_type_code);
20541: ELSE
20573: , x_value_type_code => l_adr_value_type_code
20574: , p_side => 'NA'
20575: );
20576:
20577: xla_ae_lines_pkg.set_ccid(
20578: p_code_combination_id => l_ccid
20579: , p_value_type_code => l_adr_value_type_code
20580: , p_transaction_coa_id => l_adr_transaction_coa_id
20581: , p_accounting_coa_id => l_adr_accounting_coa_id
20609: xla_accounting_err_pkg.build_message
20610: (p_appli_s_name => 'XLA'
20611: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
20612: ,p_token_1 => 'LINE_NUMBER'
20613: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
20614: ,p_token_2 => 'LINE_TYPE_NAME'
20615: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
20616: l_component_type
20617: ,l_component_code
20645: --
20646: --
20647: ------------------------------------------------------------------------------------------------
20648: -- 4219869 Business Flow
20649: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20650: -- Prior Entry. Currently, the following code is always generated.
20651: ------------------------------------------------------------------------------------------------
20652: XLA_AE_LINES_PKG.ValidateCurrentLine;
20653:
20648: -- 4219869 Business Flow
20649: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20650: -- Prior Entry. Currently, the following code is always generated.
20651: ------------------------------------------------------------------------------------------------
20652: XLA_AE_LINES_PKG.ValidateCurrentLine;
20653:
20654: ------------------------------------------------------------------------------------
20655: -- 4219869 Business Flow
20656: -- Populated credit and debit amounts -- Need to generate this within IF
20654: ------------------------------------------------------------------------------------
20655: -- 4219869 Business Flow
20656: -- Populated credit and debit amounts -- Need to generate this within IF
20657: ------------------------------------------------------------------------------------
20658: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20659:
20660: ----------------------------------------------------------------------------------
20661: -- 4219869 Business Flow
20662: -- Update journal entry status -- Need to generate this within IF
20686: -- To allow MPA report to determine if it should generate report process
20687: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20688: ------------------------------------------------------------------------------------------
20689:
20690: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20691: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20692: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20693: -- call ADRs
20694: -- Bug 4922099
20687: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20688: ------------------------------------------------------------------------------------------
20689:
20690: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20691: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20692: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20693: -- call ADRs
20694: -- Bug 4922099
20695: --
20711: , x_value_type_code => l_adr_value_type_code
20712: , p_side => 'NA'
20713: );
20714:
20715: xla_ae_lines_pkg.set_ccid(
20716: p_code_combination_id => l_ccid
20717: , p_value_type_code => l_adr_value_type_code
20718: , p_transaction_coa_id => l_adr_transaction_coa_id
20719: , p_accounting_coa_id => l_adr_accounting_coa_id
20734:
20735: --
20736: -- Update the line information that should be overwritten
20737: --
20738: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20739: p_header_num => 1);
20740: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20741:
20742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20736: -- Update the line information that should be overwritten
20737: --
20738: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20739: p_header_num => 1);
20740: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20741:
20742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20743:
20744: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20738: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20739: p_header_num => 1);
20740: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20741:
20742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20743:
20744: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20745: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20746: END IF;
20741:
20742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20743:
20744: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20745: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20746: END IF;
20747:
20748: --
20749: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20748: --
20749: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20750: --
20751: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
20752: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
20753: ELSE
20754: ---------------------------------------------------------------------------------------------------
20755: -- 4262811a Switch Sign
20756: ---------------------------------------------------------------------------------------------------
20753: ELSE
20754: ---------------------------------------------------------------------------------------------------
20755: -- 4262811a Switch Sign
20756: ---------------------------------------------------------------------------------------------------
20757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20754: ---------------------------------------------------------------------------------------------------
20755: -- 4262811a Switch Sign
20756: ---------------------------------------------------------------------------------------------------
20757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20762: -- 5132302
20755: -- 4262811a Switch Sign
20756: ---------------------------------------------------------------------------------------------------
20757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20762: -- 5132302
20763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20756: ---------------------------------------------------------------------------------------------------
20757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20762: -- 5132302
20763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20762: -- 5132302
20763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20765:
20759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20762: -- 5132302
20763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20765:
20766: END IF;
20767:
20760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20762: -- 5132302
20763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20765:
20766: END IF;
20767:
20768: -- 4955764
20765:
20766: END IF;
20767:
20768: -- 4955764
20769: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20770: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20771:
20772:
20773: XLA_AE_LINES_PKG.ValidateCurrentLine;
20769: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20770: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20771:
20772:
20773: XLA_AE_LINES_PKG.ValidateCurrentLine;
20774: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20775:
20776: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20777: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20770: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20771:
20772:
20773: XLA_AE_LINES_PKG.ValidateCurrentLine;
20774: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20775:
20776: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20777: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20778: ,p_balance_type_code => l_balance_type_code);
20913: --
20914: -- bulk performance
20915: --
20916: l_balance_type_code VARCHAR2(1);
20917: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
20918: l_log_module VARCHAR2(240);
20919:
20920: --
20921: -- Upgrade strategy
20982: p_source_49 IS NULL
20983: THEN
20984:
20985: --
20986: XLA_AE_LINES_PKG.SetNewLine;
20987:
20988: p_balance_type_code := l_balance_type_code;
20989: -- set the flag so later we will know whether the gain loss line needs to be created
20990:
20994:
20995: --
20996: -- bulk performance
20997: --
20998: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
20999: p_header_num => 0); -- 4262811
21000: --
21001: -- set accounting line options
21002: --
20999: p_header_num => 0); -- 4262811
21000: --
21001: -- set accounting line options
21002: --
21003: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
21004: p_natural_side_code => 'C'
21005: , p_gain_or_loss_flag => 'N'
21006: , p_gl_transfer_mode_code => 'S'
21007: , p_acct_entry_type_code => 'A'
21013: --
21014: --
21015: -- set accounting line type info
21016: --
21017: xla_ae_lines_pkg.SetAcctLineType
21018: (p_component_type => l_component_type
21019: ,p_event_type_code => l_event_type_code
21020: ,p_line_definition_owner_code => l_line_definition_owner_code
21021: ,p_line_definition_code => l_line_definition_code
21027: ,p_event_class_code => l_event_class_code);
21028: --
21029: -- set accounting class
21030: --
21031: xla_ae_lines_pkg.SetAcctClass(
21032: p_accounting_class_code => 'UNBILL'
21033: , p_ae_header_id => l_ae_header_id
21034: );
21035:
21035:
21036: --
21037: -- set rounding class
21038: --
21039: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21040: 'UNBILL';
21041:
21042: --
21043: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21039: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21040: 'UNBILL';
21041:
21042: --
21043: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21044: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21045: --
21046: -- bulk performance
21047: --
21040: 'UNBILL';
21041:
21042: --
21043: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21044: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21045: --
21046: -- bulk performance
21047: --
21048: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21044: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21045: --
21046: -- bulk performance
21047: --
21048: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21049:
21050: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21051: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21052:
21046: -- bulk performance
21047: --
21048: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21049:
21050: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21051: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21052:
21053: -- 4955764
21054: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21050: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21051: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21052:
21053: -- 4955764
21054: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21055: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
21056:
21057: -- 4458381 Public Sector Enh
21058:
21086: l_rec_acct_attrs.array_char_value(11) := p_source_25;
21087: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21088: l_rec_acct_attrs.array_num_value(12) := p_source_48;
21089:
21090: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21091: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21092:
21093: ---------------------------------------------------------------------------------------------------------------
21094: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21087: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21088: l_rec_acct_attrs.array_num_value(12) := p_source_48;
21089:
21090: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21091: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21092:
21093: ---------------------------------------------------------------------------------------------------------------
21094: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21095: ---------------------------------------------------------------------------------------------------------------
21090: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21091: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21092:
21093: ---------------------------------------------------------------------------------------------------------------
21094: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21095: ---------------------------------------------------------------------------------------------------------------
21096: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21097:
21098: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21092:
21093: ---------------------------------------------------------------------------------------------------------------
21094: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21095: ---------------------------------------------------------------------------------------------------------------
21096: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21097:
21098: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21099: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21100:
21094: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21095: ---------------------------------------------------------------------------------------------------------------
21096: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21097:
21098: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21099: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21100:
21101: IF xla_accounting_cache_pkg.GetValueChar
21102: (p_source_code => 'LEDGER_CATEGORY_CODE'
21095: ---------------------------------------------------------------------------------------------------------------
21096: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21097:
21098: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21099: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21100:
21101: IF xla_accounting_cache_pkg.GetValueChar
21102: (p_source_code => 'LEDGER_CATEGORY_CODE'
21103: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
21106: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
21107: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
21108: )
21109: THEN
21110: xla_ae_lines_pkg.BflowUpgEntry
21111: (p_business_method_code => l_bflow_method_code
21112: ,p_business_class_code => l_bflow_class_code
21113: ,p_balance_type => l_balance_type_code);
21114: ELSE
21146: , x_value_type_code => l_adr_value_type_code
21147: , p_side => 'NA'
21148: );
21149:
21150: xla_ae_lines_pkg.set_ccid(
21151: p_code_combination_id => l_ccid
21152: , p_value_type_code => l_adr_value_type_code
21153: , p_transaction_coa_id => l_adr_transaction_coa_id
21154: , p_accounting_coa_id => l_adr_accounting_coa_id
21182: xla_accounting_err_pkg.build_message
21183: (p_appli_s_name => 'XLA'
21184: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
21185: ,p_token_1 => 'LINE_NUMBER'
21186: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
21187: ,p_token_2 => 'LINE_TYPE_NAME'
21188: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
21189: l_component_type
21190: ,l_component_code
21218: --
21219: --
21220: ------------------------------------------------------------------------------------------------
21221: -- 4219869 Business Flow
21222: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21223: -- Prior Entry. Currently, the following code is always generated.
21224: ------------------------------------------------------------------------------------------------
21225: XLA_AE_LINES_PKG.ValidateCurrentLine;
21226:
21221: -- 4219869 Business Flow
21222: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21223: -- Prior Entry. Currently, the following code is always generated.
21224: ------------------------------------------------------------------------------------------------
21225: XLA_AE_LINES_PKG.ValidateCurrentLine;
21226:
21227: ------------------------------------------------------------------------------------
21228: -- 4219869 Business Flow
21229: -- Populated credit and debit amounts -- Need to generate this within IF
21227: ------------------------------------------------------------------------------------
21228: -- 4219869 Business Flow
21229: -- Populated credit and debit amounts -- Need to generate this within IF
21230: ------------------------------------------------------------------------------------
21231: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21232:
21233: ----------------------------------------------------------------------------------
21234: -- 4219869 Business Flow
21235: -- Update journal entry status -- Need to generate this within IF
21259: -- To allow MPA report to determine if it should generate report process
21260: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21261: ------------------------------------------------------------------------------------------
21262:
21263: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21264: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21265: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21266: -- call ADRs
21267: -- Bug 4922099
21260: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21261: ------------------------------------------------------------------------------------------
21262:
21263: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21264: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21265: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21266: -- call ADRs
21267: -- Bug 4922099
21268: --
21284: , x_value_type_code => l_adr_value_type_code
21285: , p_side => 'NA'
21286: );
21287:
21288: xla_ae_lines_pkg.set_ccid(
21289: p_code_combination_id => l_ccid
21290: , p_value_type_code => l_adr_value_type_code
21291: , p_transaction_coa_id => l_adr_transaction_coa_id
21292: , p_accounting_coa_id => l_adr_accounting_coa_id
21307:
21308: --
21309: -- Update the line information that should be overwritten
21310: --
21311: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21312: p_header_num => 1);
21313: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21314:
21315: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21309: -- Update the line information that should be overwritten
21310: --
21311: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21312: p_header_num => 1);
21313: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21314:
21315: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21316:
21317: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21311: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21312: p_header_num => 1);
21313: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21314:
21315: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21316:
21317: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21318: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21319: END IF;
21314:
21315: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21316:
21317: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21318: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21319: END IF;
21320:
21321: --
21322: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21321: --
21322: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21323: --
21324: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
21325: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
21326: ELSE
21327: ---------------------------------------------------------------------------------------------------
21328: -- 4262811a Switch Sign
21329: ---------------------------------------------------------------------------------------------------
21326: ELSE
21327: ---------------------------------------------------------------------------------------------------
21328: -- 4262811a Switch Sign
21329: ---------------------------------------------------------------------------------------------------
21330: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21331: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21333: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21327: ---------------------------------------------------------------------------------------------------
21328: -- 4262811a Switch Sign
21329: ---------------------------------------------------------------------------------------------------
21330: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21331: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21333: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21335: -- 5132302
21328: -- 4262811a Switch Sign
21329: ---------------------------------------------------------------------------------------------------
21330: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21331: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21333: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21335: -- 5132302
21336: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21329: ---------------------------------------------------------------------------------------------------
21330: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21331: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21333: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21335: -- 5132302
21336: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21337: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21330: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21331: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21333: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21335: -- 5132302
21336: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21337: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21338:
21332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21333: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21335: -- 5132302
21336: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21337: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21338:
21339: END IF;
21340:
21333: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21335: -- 5132302
21336: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21337: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21338:
21339: END IF;
21340:
21341: -- 4955764
21338:
21339: END IF;
21340:
21341: -- 4955764
21342: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21343: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21344:
21345:
21346: XLA_AE_LINES_PKG.ValidateCurrentLine;
21342: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21343: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21344:
21345:
21346: XLA_AE_LINES_PKG.ValidateCurrentLine;
21347: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21348:
21349: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21350: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21343: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21344:
21345:
21346: XLA_AE_LINES_PKG.ValidateCurrentLine;
21347: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21348:
21349: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21350: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21351: ,p_balance_type_code => l_balance_type_code);
21486: --
21487: -- bulk performance
21488: --
21489: l_balance_type_code VARCHAR2(1);
21490: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
21491: l_log_module VARCHAR2(240);
21492:
21493: --
21494: -- Upgrade strategy
21555: p_source_49 IS NULL
21556: THEN
21557:
21558: --
21559: XLA_AE_LINES_PKG.SetNewLine;
21560:
21561: p_balance_type_code := l_balance_type_code;
21562: -- set the flag so later we will know whether the gain loss line needs to be created
21563:
21567:
21568: --
21569: -- bulk performance
21570: --
21571: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
21572: p_header_num => 0); -- 4262811
21573: --
21574: -- set accounting line options
21575: --
21572: p_header_num => 0); -- 4262811
21573: --
21574: -- set accounting line options
21575: --
21576: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
21577: p_natural_side_code => 'C'
21578: , p_gain_or_loss_flag => 'N'
21579: , p_gl_transfer_mode_code => 'S'
21580: , p_acct_entry_type_code => 'A'
21586: --
21587: --
21588: -- set accounting line type info
21589: --
21590: xla_ae_lines_pkg.SetAcctLineType
21591: (p_component_type => l_component_type
21592: ,p_event_type_code => l_event_type_code
21593: ,p_line_definition_owner_code => l_line_definition_owner_code
21594: ,p_line_definition_code => l_line_definition_code
21600: ,p_event_class_code => l_event_class_code);
21601: --
21602: -- set accounting class
21603: --
21604: xla_ae_lines_pkg.SetAcctClass(
21605: p_accounting_class_code => 'UNEARNED_REVENUE'
21606: , p_ae_header_id => l_ae_header_id
21607: );
21608:
21608:
21609: --
21610: -- set rounding class
21611: --
21612: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21613: 'RECEIVABLE';
21614:
21615: --
21616: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21612: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21613: 'RECEIVABLE';
21614:
21615: --
21616: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21617: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21618: --
21619: -- bulk performance
21620: --
21613: 'RECEIVABLE';
21614:
21615: --
21616: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21617: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21618: --
21619: -- bulk performance
21620: --
21621: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21617: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21618: --
21619: -- bulk performance
21620: --
21621: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21622:
21623: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21624: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21625:
21619: -- bulk performance
21620: --
21621: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21622:
21623: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21624: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21625:
21626: -- 4955764
21627: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21623: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21624: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21625:
21626: -- 4955764
21627: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21628: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
21629:
21630: -- 4458381 Public Sector Enh
21631:
21659: l_rec_acct_attrs.array_char_value(11) := p_source_25;
21660: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21661: l_rec_acct_attrs.array_num_value(12) := p_source_48;
21662:
21663: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21664: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21665:
21666: ---------------------------------------------------------------------------------------------------------------
21667: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21660: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21661: l_rec_acct_attrs.array_num_value(12) := p_source_48;
21662:
21663: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21664: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21665:
21666: ---------------------------------------------------------------------------------------------------------------
21667: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21668: ---------------------------------------------------------------------------------------------------------------
21663: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21664: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21665:
21666: ---------------------------------------------------------------------------------------------------------------
21667: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21668: ---------------------------------------------------------------------------------------------------------------
21669: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21670:
21671: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21665:
21666: ---------------------------------------------------------------------------------------------------------------
21667: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21668: ---------------------------------------------------------------------------------------------------------------
21669: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21670:
21671: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21672: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21673:
21667: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21668: ---------------------------------------------------------------------------------------------------------------
21669: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21670:
21671: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21672: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21673:
21674: IF xla_accounting_cache_pkg.GetValueChar
21675: (p_source_code => 'LEDGER_CATEGORY_CODE'
21668: ---------------------------------------------------------------------------------------------------------------
21669: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21670:
21671: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21672: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21673:
21674: IF xla_accounting_cache_pkg.GetValueChar
21675: (p_source_code => 'LEDGER_CATEGORY_CODE'
21676: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
21679: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
21680: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
21681: )
21682: THEN
21683: xla_ae_lines_pkg.BflowUpgEntry
21684: (p_business_method_code => l_bflow_method_code
21685: ,p_business_class_code => l_bflow_class_code
21686: ,p_balance_type => l_balance_type_code);
21687: ELSE
21719: , x_value_type_code => l_adr_value_type_code
21720: , p_side => 'NA'
21721: );
21722:
21723: xla_ae_lines_pkg.set_ccid(
21724: p_code_combination_id => l_ccid
21725: , p_value_type_code => l_adr_value_type_code
21726: , p_transaction_coa_id => l_adr_transaction_coa_id
21727: , p_accounting_coa_id => l_adr_accounting_coa_id
21755: xla_accounting_err_pkg.build_message
21756: (p_appli_s_name => 'XLA'
21757: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
21758: ,p_token_1 => 'LINE_NUMBER'
21759: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
21760: ,p_token_2 => 'LINE_TYPE_NAME'
21761: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
21762: l_component_type
21763: ,l_component_code
21791: --
21792: --
21793: ------------------------------------------------------------------------------------------------
21794: -- 4219869 Business Flow
21795: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21796: -- Prior Entry. Currently, the following code is always generated.
21797: ------------------------------------------------------------------------------------------------
21798: XLA_AE_LINES_PKG.ValidateCurrentLine;
21799:
21794: -- 4219869 Business Flow
21795: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21796: -- Prior Entry. Currently, the following code is always generated.
21797: ------------------------------------------------------------------------------------------------
21798: XLA_AE_LINES_PKG.ValidateCurrentLine;
21799:
21800: ------------------------------------------------------------------------------------
21801: -- 4219869 Business Flow
21802: -- Populated credit and debit amounts -- Need to generate this within IF
21800: ------------------------------------------------------------------------------------
21801: -- 4219869 Business Flow
21802: -- Populated credit and debit amounts -- Need to generate this within IF
21803: ------------------------------------------------------------------------------------
21804: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21805:
21806: ----------------------------------------------------------------------------------
21807: -- 4219869 Business Flow
21808: -- Update journal entry status -- Need to generate this within IF
21832: -- To allow MPA report to determine if it should generate report process
21833: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21834: ------------------------------------------------------------------------------------------
21835:
21836: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21837: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21838: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21839: -- call ADRs
21840: -- Bug 4922099
21833: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21834: ------------------------------------------------------------------------------------------
21835:
21836: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21837: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21838: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21839: -- call ADRs
21840: -- Bug 4922099
21841: --
21857: , x_value_type_code => l_adr_value_type_code
21858: , p_side => 'NA'
21859: );
21860:
21861: xla_ae_lines_pkg.set_ccid(
21862: p_code_combination_id => l_ccid
21863: , p_value_type_code => l_adr_value_type_code
21864: , p_transaction_coa_id => l_adr_transaction_coa_id
21865: , p_accounting_coa_id => l_adr_accounting_coa_id
21880:
21881: --
21882: -- Update the line information that should be overwritten
21883: --
21884: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21885: p_header_num => 1);
21886: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21887:
21888: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21882: -- Update the line information that should be overwritten
21883: --
21884: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21885: p_header_num => 1);
21886: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21887:
21888: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21889:
21890: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21884: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21885: p_header_num => 1);
21886: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21887:
21888: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21889:
21890: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21891: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21892: END IF;
21887:
21888: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21889:
21890: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21891: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21892: END IF;
21893:
21894: --
21895: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21894: --
21895: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21896: --
21897: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
21898: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
21899: ELSE
21900: ---------------------------------------------------------------------------------------------------
21901: -- 4262811a Switch Sign
21902: ---------------------------------------------------------------------------------------------------
21899: ELSE
21900: ---------------------------------------------------------------------------------------------------
21901: -- 4262811a Switch Sign
21902: ---------------------------------------------------------------------------------------------------
21903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21900: ---------------------------------------------------------------------------------------------------
21901: -- 4262811a Switch Sign
21902: ---------------------------------------------------------------------------------------------------
21903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21908: -- 5132302
21901: -- 4262811a Switch Sign
21902: ---------------------------------------------------------------------------------------------------
21903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21908: -- 5132302
21909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21902: ---------------------------------------------------------------------------------------------------
21903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21908: -- 5132302
21909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21908: -- 5132302
21909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21911:
21905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21908: -- 5132302
21909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21911:
21912: END IF;
21913:
21906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21908: -- 5132302
21909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21911:
21912: END IF;
21913:
21914: -- 4955764
21911:
21912: END IF;
21913:
21914: -- 4955764
21915: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21916: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21917:
21918:
21919: XLA_AE_LINES_PKG.ValidateCurrentLine;
21915: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21916: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21917:
21918:
21919: XLA_AE_LINES_PKG.ValidateCurrentLine;
21920: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21921:
21922: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21923: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21916: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21917:
21918:
21919: XLA_AE_LINES_PKG.ValidateCurrentLine;
21920: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21921:
21922: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21923: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21924: ,p_balance_type_code => l_balance_type_code);
22059: --
22060: -- bulk performance
22061: --
22062: l_balance_type_code VARCHAR2(1);
22063: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
22064: l_log_module VARCHAR2(240);
22065:
22066: --
22067: -- Upgrade strategy
22139: ') <> 'ENDORSEMENT')
22140: THEN
22141:
22142: --
22143: XLA_AE_LINES_PKG.SetNewLine;
22144:
22145: p_balance_type_code := l_balance_type_code;
22146: -- set the flag so later we will know whether the gain loss line needs to be created
22147:
22151:
22152: --
22153: -- bulk performance
22154: --
22155: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
22156: p_header_num => 0); -- 4262811
22157: --
22158: -- set accounting line options
22159: --
22156: p_header_num => 0); -- 4262811
22157: --
22158: -- set accounting line options
22159: --
22160: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
22161: p_natural_side_code => 'D'
22162: , p_gain_or_loss_flag => 'N'
22163: , p_gl_transfer_mode_code => 'S'
22164: , p_acct_entry_type_code => 'A'
22170: --
22171: --
22172: -- set accounting line type info
22173: --
22174: xla_ae_lines_pkg.SetAcctLineType
22175: (p_component_type => l_component_type
22176: ,p_event_type_code => l_event_type_code
22177: ,p_line_definition_owner_code => l_line_definition_owner_code
22178: ,p_line_definition_code => l_line_definition_code
22184: ,p_event_class_code => l_event_class_code);
22185: --
22186: -- set accounting class
22187: --
22188: xla_ae_lines_pkg.SetAcctClass(
22189: p_accounting_class_code => 'RECEIVABLE'
22190: , p_ae_header_id => l_ae_header_id
22191: );
22192:
22192:
22193: --
22194: -- set rounding class
22195: --
22196: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22197: 'RECEIVABLE';
22198:
22199: --
22200: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22196: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22197: 'RECEIVABLE';
22198:
22199: --
22200: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22201: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22202: --
22203: -- bulk performance
22204: --
22197: 'RECEIVABLE';
22198:
22199: --
22200: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22201: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22202: --
22203: -- bulk performance
22204: --
22205: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22201: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22202: --
22203: -- bulk performance
22204: --
22205: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22206:
22207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22208: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22209:
22203: -- bulk performance
22204: --
22205: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22206:
22207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22208: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22209:
22210: -- 4955764
22211: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22208: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22209:
22210: -- 4955764
22211: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22212: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
22213:
22214: -- 4458381 Public Sector Enh
22215:
22241: l_rec_acct_attrs.array_num_value(10) := p_source_24;
22242: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
22243: l_rec_acct_attrs.array_char_value(11) := p_source_25;
22244:
22245: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22246: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22247:
22248: ---------------------------------------------------------------------------------------------------------------
22249: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22242: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
22243: l_rec_acct_attrs.array_char_value(11) := p_source_25;
22244:
22245: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22246: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22247:
22248: ---------------------------------------------------------------------------------------------------------------
22249: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22250: ---------------------------------------------------------------------------------------------------------------
22245: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22246: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22247:
22248: ---------------------------------------------------------------------------------------------------------------
22249: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22250: ---------------------------------------------------------------------------------------------------------------
22251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22252:
22253: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22247:
22248: ---------------------------------------------------------------------------------------------------------------
22249: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22250: ---------------------------------------------------------------------------------------------------------------
22251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22252:
22253: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22254: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22255:
22249: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22250: ---------------------------------------------------------------------------------------------------------------
22251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22252:
22253: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22254: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22255:
22256: IF xla_accounting_cache_pkg.GetValueChar
22257: (p_source_code => 'LEDGER_CATEGORY_CODE'
22250: ---------------------------------------------------------------------------------------------------------------
22251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22252:
22253: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22254: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22255:
22256: IF xla_accounting_cache_pkg.GetValueChar
22257: (p_source_code => 'LEDGER_CATEGORY_CODE'
22258: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
22261: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
22262: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
22263: )
22264: THEN
22265: xla_ae_lines_pkg.BflowUpgEntry
22266: (p_business_method_code => l_bflow_method_code
22267: ,p_business_class_code => l_bflow_class_code
22268: ,p_balance_type => l_balance_type_code);
22269: ELSE
22278: --
22279: -- call description
22280: --
22281:
22282: xla_ae_lines_pkg.SetLineDescription(
22283: p_ae_header_id => l_ae_header_id
22284: ,p_description => Description_1 (
22285: p_application_id => p_application_id
22286: , p_ae_header_id => l_ae_header_id
22310: , x_value_type_code => l_adr_value_type_code
22311: , p_side => 'NA'
22312: );
22313:
22314: xla_ae_lines_pkg.set_ccid(
22315: p_code_combination_id => l_ccid
22316: , p_value_type_code => l_adr_value_type_code
22317: , p_transaction_coa_id => l_adr_transaction_coa_id
22318: , p_accounting_coa_id => l_adr_accounting_coa_id
22343: );
22344:
22345: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
22346:
22347: xla_ae_lines_pkg.set_segment(
22348: p_to_segment_code => 'GL_BALANCING'
22349: , p_segment_value => l_segment
22350: , p_from_segment_code => l_adr_value_segment_code
22351: , p_from_combination_id => l_adr_value_combination_id
22387: xla_accounting_err_pkg.build_message
22388: (p_appli_s_name => 'XLA'
22389: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
22390: ,p_token_1 => 'LINE_NUMBER'
22391: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
22392: ,p_token_2 => 'LINE_TYPE_NAME'
22393: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
22394: l_component_type
22395: ,l_component_code
22423: --
22424: --
22425: ------------------------------------------------------------------------------------------------
22426: -- 4219869 Business Flow
22427: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22428: -- Prior Entry. Currently, the following code is always generated.
22429: ------------------------------------------------------------------------------------------------
22430: XLA_AE_LINES_PKG.ValidateCurrentLine;
22431:
22426: -- 4219869 Business Flow
22427: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22428: -- Prior Entry. Currently, the following code is always generated.
22429: ------------------------------------------------------------------------------------------------
22430: XLA_AE_LINES_PKG.ValidateCurrentLine;
22431:
22432: ------------------------------------------------------------------------------------
22433: -- 4219869 Business Flow
22434: -- Populated credit and debit amounts -- Need to generate this within IF
22432: ------------------------------------------------------------------------------------
22433: -- 4219869 Business Flow
22434: -- Populated credit and debit amounts -- Need to generate this within IF
22435: ------------------------------------------------------------------------------------
22436: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22437:
22438: ----------------------------------------------------------------------------------
22439: -- 4219869 Business Flow
22440: -- Update journal entry status -- Need to generate this within IF
22464: -- To allow MPA report to determine if it should generate report process
22465: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22466: ------------------------------------------------------------------------------------------
22467:
22468: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22469: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22470: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22471: -- call ADRs
22472: -- Bug 4922099
22465: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22466: ------------------------------------------------------------------------------------------
22467:
22468: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22469: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22470: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22471: -- call ADRs
22472: -- Bug 4922099
22473: --
22489: , x_value_type_code => l_adr_value_type_code
22490: , p_side => 'NA'
22491: );
22492:
22493: xla_ae_lines_pkg.set_ccid(
22494: p_code_combination_id => l_ccid
22495: , p_value_type_code => l_adr_value_type_code
22496: , p_transaction_coa_id => l_adr_transaction_coa_id
22497: , p_accounting_coa_id => l_adr_accounting_coa_id
22522: );
22523:
22524: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
22525:
22526: xla_ae_lines_pkg.set_segment(
22527: p_to_segment_code => 'GL_BALANCING'
22528: , p_segment_value => l_segment
22529: , p_from_segment_code => l_adr_value_segment_code
22530: , p_from_combination_id => l_adr_value_combination_id
22553:
22554: --
22555: -- Update the line information that should be overwritten
22556: --
22557: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22558: p_header_num => 1);
22559: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22560:
22561: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22555: -- Update the line information that should be overwritten
22556: --
22557: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22558: p_header_num => 1);
22559: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22560:
22561: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22562:
22563: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22557: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22558: p_header_num => 1);
22559: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22560:
22561: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22562:
22563: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22564: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22565: END IF;
22560:
22561: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22562:
22563: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22564: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22565: END IF;
22566:
22567: --
22568: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22567: --
22568: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22569: --
22570: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
22571: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
22572: ELSE
22573: ---------------------------------------------------------------------------------------------------
22574: -- 4262811a Switch Sign
22575: ---------------------------------------------------------------------------------------------------
22572: ELSE
22573: ---------------------------------------------------------------------------------------------------
22574: -- 4262811a Switch Sign
22575: ---------------------------------------------------------------------------------------------------
22576: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22577: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22578: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22579: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22580: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22573: ---------------------------------------------------------------------------------------------------
22574: -- 4262811a Switch Sign
22575: ---------------------------------------------------------------------------------------------------
22576: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22577: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22578: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22579: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22580: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22581: -- 5132302
22574: -- 4262811a Switch Sign
22575: ---------------------------------------------------------------------------------------------------
22576: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22577: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22578: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22579: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22580: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22581: -- 5132302
22582: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22575: ---------------------------------------------------------------------------------------------------
22576: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22577: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22578: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22579: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22580: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22581: -- 5132302
22582: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22583: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22576: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22577: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22578: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22579: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22580: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22581: -- 5132302
22582: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22583: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22584:
22578: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22579: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22580: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22581: -- 5132302
22582: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22583: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22584:
22585: END IF;
22586:
22579: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22580: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22581: -- 5132302
22582: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22583: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22584:
22585: END IF;
22586:
22587: -- 4955764
22584:
22585: END IF;
22586:
22587: -- 4955764
22588: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22589: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22590:
22591:
22592: XLA_AE_LINES_PKG.ValidateCurrentLine;
22588: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22589: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22590:
22591:
22592: XLA_AE_LINES_PKG.ValidateCurrentLine;
22593: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22594:
22595: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22596: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22589: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22590:
22591:
22592: XLA_AE_LINES_PKG.ValidateCurrentLine;
22593: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22594:
22595: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22596: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22597: ,p_balance_type_code => l_balance_type_code);
22736: --
22737: -- bulk performance
22738: --
22739: l_balance_type_code VARCHAR2(1);
22740: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
22741: l_log_module VARCHAR2(240);
22742:
22743: --
22744: -- Upgrade strategy
22813: ') = 'CHARGES')
22814: THEN
22815:
22816: --
22817: XLA_AE_LINES_PKG.SetNewLine;
22818:
22819: p_balance_type_code := l_balance_type_code;
22820: -- set the flag so later we will know whether the gain loss line needs to be created
22821:
22825:
22826: --
22827: -- bulk performance
22828: --
22829: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
22830: p_header_num => 0); -- 4262811
22831: --
22832: -- set accounting line options
22833: --
22830: p_header_num => 0); -- 4262811
22831: --
22832: -- set accounting line options
22833: --
22834: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
22835: p_natural_side_code => 'D'
22836: , p_gain_or_loss_flag => 'N'
22837: , p_gl_transfer_mode_code => 'S'
22838: , p_acct_entry_type_code => 'A'
22844: --
22845: --
22846: -- set accounting line type info
22847: --
22848: xla_ae_lines_pkg.SetAcctLineType
22849: (p_component_type => l_component_type
22850: ,p_event_type_code => l_event_type_code
22851: ,p_line_definition_owner_code => l_line_definition_owner_code
22852: ,p_line_definition_code => l_line_definition_code
22858: ,p_event_class_code => l_event_class_code);
22859: --
22860: -- set accounting class
22861: --
22862: xla_ae_lines_pkg.SetAcctClass(
22863: p_accounting_class_code => 'RECEIVABLE'
22864: , p_ae_header_id => l_ae_header_id
22865: );
22866:
22866:
22867: --
22868: -- set rounding class
22869: --
22870: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22871: 'RECEIVABLE';
22872:
22873: --
22874: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22870: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22871: 'RECEIVABLE';
22872:
22873: --
22874: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22875: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22876: --
22877: -- bulk performance
22878: --
22871: 'RECEIVABLE';
22872:
22873: --
22874: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22875: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22876: --
22877: -- bulk performance
22878: --
22879: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22875: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22876: --
22877: -- bulk performance
22878: --
22879: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22880:
22881: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22882: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22883:
22877: -- bulk performance
22878: --
22879: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22880:
22881: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22882: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22883:
22884: -- 4955764
22885: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22881: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22882: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22883:
22884: -- 4955764
22885: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22886: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
22887:
22888: -- 4458381 Public Sector Enh
22889:
22919: l_rec_acct_attrs.array_char_value(12) := p_source_25;
22920: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
22921: l_rec_acct_attrs.array_num_value(13) := p_source_45;
22922:
22923: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22924: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22925:
22926: ---------------------------------------------------------------------------------------------------------------
22927: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22920: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
22921: l_rec_acct_attrs.array_num_value(13) := p_source_45;
22922:
22923: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22924: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22925:
22926: ---------------------------------------------------------------------------------------------------------------
22927: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22928: ---------------------------------------------------------------------------------------------------------------
22923: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22924: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22925:
22926: ---------------------------------------------------------------------------------------------------------------
22927: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22928: ---------------------------------------------------------------------------------------------------------------
22929: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22930:
22931: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22925:
22926: ---------------------------------------------------------------------------------------------------------------
22927: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22928: ---------------------------------------------------------------------------------------------------------------
22929: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22930:
22931: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22932: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22933:
22927: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22928: ---------------------------------------------------------------------------------------------------------------
22929: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22930:
22931: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22932: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22933:
22934: IF xla_accounting_cache_pkg.GetValueChar
22935: (p_source_code => 'LEDGER_CATEGORY_CODE'
22928: ---------------------------------------------------------------------------------------------------------------
22929: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22930:
22931: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22932: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22933:
22934: IF xla_accounting_cache_pkg.GetValueChar
22935: (p_source_code => 'LEDGER_CATEGORY_CODE'
22936: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
22939: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
22940: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
22941: )
22942: THEN
22943: xla_ae_lines_pkg.BflowUpgEntry
22944: (p_business_method_code => l_bflow_method_code
22945: ,p_business_class_code => l_bflow_class_code
22946: ,p_balance_type => l_balance_type_code);
22947: ELSE
22956: --
22957: -- call description
22958: --
22959:
22960: xla_ae_lines_pkg.SetLineDescription(
22961: p_ae_header_id => l_ae_header_id
22962: ,p_description => Description_1 (
22963: p_application_id => p_application_id
22964: , p_ae_header_id => l_ae_header_id
22988: , x_value_type_code => l_adr_value_type_code
22989: , p_side => 'NA'
22990: );
22991:
22992: xla_ae_lines_pkg.set_ccid(
22993: p_code_combination_id => l_ccid
22994: , p_value_type_code => l_adr_value_type_code
22995: , p_transaction_coa_id => l_adr_transaction_coa_id
22996: , p_accounting_coa_id => l_adr_accounting_coa_id
23021: );
23022:
23023: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
23024:
23025: xla_ae_lines_pkg.set_segment(
23026: p_to_segment_code => 'GL_BALANCING'
23027: , p_segment_value => l_segment
23028: , p_from_segment_code => l_adr_value_segment_code
23029: , p_from_combination_id => l_adr_value_combination_id
23065: xla_accounting_err_pkg.build_message
23066: (p_appli_s_name => 'XLA'
23067: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
23068: ,p_token_1 => 'LINE_NUMBER'
23069: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
23070: ,p_token_2 => 'LINE_TYPE_NAME'
23071: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
23072: l_component_type
23073: ,l_component_code
23101: --
23102: --
23103: ------------------------------------------------------------------------------------------------
23104: -- 4219869 Business Flow
23105: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23106: -- Prior Entry. Currently, the following code is always generated.
23107: ------------------------------------------------------------------------------------------------
23108: XLA_AE_LINES_PKG.ValidateCurrentLine;
23109:
23104: -- 4219869 Business Flow
23105: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23106: -- Prior Entry. Currently, the following code is always generated.
23107: ------------------------------------------------------------------------------------------------
23108: XLA_AE_LINES_PKG.ValidateCurrentLine;
23109:
23110: ------------------------------------------------------------------------------------
23111: -- 4219869 Business Flow
23112: -- Populated credit and debit amounts -- Need to generate this within IF
23110: ------------------------------------------------------------------------------------
23111: -- 4219869 Business Flow
23112: -- Populated credit and debit amounts -- Need to generate this within IF
23113: ------------------------------------------------------------------------------------
23114: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23115:
23116: ----------------------------------------------------------------------------------
23117: -- 4219869 Business Flow
23118: -- Update journal entry status -- Need to generate this within IF
23142: -- To allow MPA report to determine if it should generate report process
23143: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23144: ------------------------------------------------------------------------------------------
23145:
23146: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23147: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23148: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23149: -- call ADRs
23150: -- Bug 4922099
23143: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23144: ------------------------------------------------------------------------------------------
23145:
23146: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23147: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23148: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23149: -- call ADRs
23150: -- Bug 4922099
23151: --
23167: , x_value_type_code => l_adr_value_type_code
23168: , p_side => 'NA'
23169: );
23170:
23171: xla_ae_lines_pkg.set_ccid(
23172: p_code_combination_id => l_ccid
23173: , p_value_type_code => l_adr_value_type_code
23174: , p_transaction_coa_id => l_adr_transaction_coa_id
23175: , p_accounting_coa_id => l_adr_accounting_coa_id
23200: );
23201:
23202: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
23203:
23204: xla_ae_lines_pkg.set_segment(
23205: p_to_segment_code => 'GL_BALANCING'
23206: , p_segment_value => l_segment
23207: , p_from_segment_code => l_adr_value_segment_code
23208: , p_from_combination_id => l_adr_value_combination_id
23231:
23232: --
23233: -- Update the line information that should be overwritten
23234: --
23235: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23236: p_header_num => 1);
23237: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23238:
23239: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23233: -- Update the line information that should be overwritten
23234: --
23235: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23236: p_header_num => 1);
23237: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23238:
23239: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23240:
23241: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23235: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23236: p_header_num => 1);
23237: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23238:
23239: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23240:
23241: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23242: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23243: END IF;
23238:
23239: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23240:
23241: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23242: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23243: END IF;
23244:
23245: --
23246: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23245: --
23246: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23247: --
23248: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
23249: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
23250: ELSE
23251: ---------------------------------------------------------------------------------------------------
23252: -- 4262811a Switch Sign
23253: ---------------------------------------------------------------------------------------------------
23250: ELSE
23251: ---------------------------------------------------------------------------------------------------
23252: -- 4262811a Switch Sign
23253: ---------------------------------------------------------------------------------------------------
23254: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23256: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23258: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23251: ---------------------------------------------------------------------------------------------------
23252: -- 4262811a Switch Sign
23253: ---------------------------------------------------------------------------------------------------
23254: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23256: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23258: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23259: -- 5132302
23252: -- 4262811a Switch Sign
23253: ---------------------------------------------------------------------------------------------------
23254: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23256: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23258: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23259: -- 5132302
23260: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23253: ---------------------------------------------------------------------------------------------------
23254: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23256: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23258: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23259: -- 5132302
23260: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23261: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23254: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23256: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23258: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23259: -- 5132302
23260: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23261: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23262:
23256: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23258: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23259: -- 5132302
23260: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23261: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23262:
23263: END IF;
23264:
23257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23258: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23259: -- 5132302
23260: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23261: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23262:
23263: END IF;
23264:
23265: -- 4955764
23262:
23263: END IF;
23264:
23265: -- 4955764
23266: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23267: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23268:
23269:
23270: XLA_AE_LINES_PKG.ValidateCurrentLine;
23266: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23267: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23268:
23269:
23270: XLA_AE_LINES_PKG.ValidateCurrentLine;
23271: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23272:
23273: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23274: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23267: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23268:
23269:
23270: XLA_AE_LINES_PKG.ValidateCurrentLine;
23271: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23272:
23273: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23274: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23275: ,p_balance_type_code => l_balance_type_code);
23412: --
23413: -- bulk performance
23414: --
23415: l_balance_type_code VARCHAR2(1);
23416: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
23417: l_log_module VARCHAR2(240);
23418:
23419: --
23420: -- Upgrade strategy
23489: ') = 'CHARGES')
23490: THEN
23491:
23492: --
23493: XLA_AE_LINES_PKG.SetNewLine;
23494:
23495: p_balance_type_code := l_balance_type_code;
23496: -- set the flag so later we will know whether the gain loss line needs to be created
23497:
23501:
23502: --
23503: -- bulk performance
23504: --
23505: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
23506: p_header_num => 0); -- 4262811
23507: --
23508: -- set accounting line options
23509: --
23506: p_header_num => 0); -- 4262811
23507: --
23508: -- set accounting line options
23509: --
23510: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
23511: p_natural_side_code => 'D'
23512: , p_gain_or_loss_flag => 'N'
23513: , p_gl_transfer_mode_code => 'S'
23514: , p_acct_entry_type_code => 'A'
23520: --
23521: --
23522: -- set accounting line type info
23523: --
23524: xla_ae_lines_pkg.SetAcctLineType
23525: (p_component_type => l_component_type
23526: ,p_event_type_code => l_event_type_code
23527: ,p_line_definition_owner_code => l_line_definition_owner_code
23528: ,p_line_definition_code => l_line_definition_code
23534: ,p_event_class_code => l_event_class_code);
23535: --
23536: -- set accounting class
23537: --
23538: xla_ae_lines_pkg.SetAcctClass(
23539: p_accounting_class_code => 'RECEIVABLE'
23540: , p_ae_header_id => l_ae_header_id
23541: );
23542:
23542:
23543: --
23544: -- set rounding class
23545: --
23546: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23547: 'RECEIVABLE';
23548:
23549: --
23550: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23546: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23547: 'RECEIVABLE';
23548:
23549: --
23550: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23551: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23552: --
23553: -- bulk performance
23554: --
23547: 'RECEIVABLE';
23548:
23549: --
23550: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23551: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23552: --
23553: -- bulk performance
23554: --
23555: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23551: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23552: --
23553: -- bulk performance
23554: --
23555: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23556:
23557: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23558: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23559:
23553: -- bulk performance
23554: --
23555: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23556:
23557: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23558: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23559:
23560: -- 4955764
23561: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23557: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23558: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23559:
23560: -- 4955764
23561: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23562: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
23563:
23564: -- 4458381 Public Sector Enh
23565:
23593: l_rec_acct_attrs.array_char_value(11) := p_source_25;
23594: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23595: l_rec_acct_attrs.array_num_value(12) := p_source_48;
23596:
23597: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23598: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23599:
23600: ---------------------------------------------------------------------------------------------------------------
23601: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23594: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23595: l_rec_acct_attrs.array_num_value(12) := p_source_48;
23596:
23597: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23598: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23599:
23600: ---------------------------------------------------------------------------------------------------------------
23601: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23602: ---------------------------------------------------------------------------------------------------------------
23597: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23598: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23599:
23600: ---------------------------------------------------------------------------------------------------------------
23601: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23602: ---------------------------------------------------------------------------------------------------------------
23603: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23604:
23605: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23599:
23600: ---------------------------------------------------------------------------------------------------------------
23601: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23602: ---------------------------------------------------------------------------------------------------------------
23603: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23604:
23605: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23606: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23607:
23601: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23602: ---------------------------------------------------------------------------------------------------------------
23603: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23604:
23605: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23606: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23607:
23608: IF xla_accounting_cache_pkg.GetValueChar
23609: (p_source_code => 'LEDGER_CATEGORY_CODE'
23602: ---------------------------------------------------------------------------------------------------------------
23603: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23604:
23605: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23606: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23607:
23608: IF xla_accounting_cache_pkg.GetValueChar
23609: (p_source_code => 'LEDGER_CATEGORY_CODE'
23610: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
23613: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
23614: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
23615: )
23616: THEN
23617: xla_ae_lines_pkg.BflowUpgEntry
23618: (p_business_method_code => l_bflow_method_code
23619: ,p_business_class_code => l_bflow_class_code
23620: ,p_balance_type => l_balance_type_code);
23621: ELSE
23630: --
23631: -- call description
23632: --
23633:
23634: xla_ae_lines_pkg.SetLineDescription(
23635: p_ae_header_id => l_ae_header_id
23636: ,p_description => Description_1 (
23637: p_application_id => p_application_id
23638: , p_ae_header_id => l_ae_header_id
23662: , x_value_type_code => l_adr_value_type_code
23663: , p_side => 'NA'
23664: );
23665:
23666: xla_ae_lines_pkg.set_ccid(
23667: p_code_combination_id => l_ccid
23668: , p_value_type_code => l_adr_value_type_code
23669: , p_transaction_coa_id => l_adr_transaction_coa_id
23670: , p_accounting_coa_id => l_adr_accounting_coa_id
23695: );
23696:
23697: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
23698:
23699: xla_ae_lines_pkg.set_segment(
23700: p_to_segment_code => 'GL_BALANCING'
23701: , p_segment_value => l_segment
23702: , p_from_segment_code => l_adr_value_segment_code
23703: , p_from_combination_id => l_adr_value_combination_id
23739: xla_accounting_err_pkg.build_message
23740: (p_appli_s_name => 'XLA'
23741: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
23742: ,p_token_1 => 'LINE_NUMBER'
23743: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
23744: ,p_token_2 => 'LINE_TYPE_NAME'
23745: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
23746: l_component_type
23747: ,l_component_code
23775: --
23776: --
23777: ------------------------------------------------------------------------------------------------
23778: -- 4219869 Business Flow
23779: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23780: -- Prior Entry. Currently, the following code is always generated.
23781: ------------------------------------------------------------------------------------------------
23782: XLA_AE_LINES_PKG.ValidateCurrentLine;
23783:
23778: -- 4219869 Business Flow
23779: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23780: -- Prior Entry. Currently, the following code is always generated.
23781: ------------------------------------------------------------------------------------------------
23782: XLA_AE_LINES_PKG.ValidateCurrentLine;
23783:
23784: ------------------------------------------------------------------------------------
23785: -- 4219869 Business Flow
23786: -- Populated credit and debit amounts -- Need to generate this within IF
23784: ------------------------------------------------------------------------------------
23785: -- 4219869 Business Flow
23786: -- Populated credit and debit amounts -- Need to generate this within IF
23787: ------------------------------------------------------------------------------------
23788: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23789:
23790: ----------------------------------------------------------------------------------
23791: -- 4219869 Business Flow
23792: -- Update journal entry status -- Need to generate this within IF
23816: -- To allow MPA report to determine if it should generate report process
23817: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23818: ------------------------------------------------------------------------------------------
23819:
23820: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23821: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23822: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23823: -- call ADRs
23824: -- Bug 4922099
23817: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23818: ------------------------------------------------------------------------------------------
23819:
23820: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23821: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23822: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23823: -- call ADRs
23824: -- Bug 4922099
23825: --
23841: , x_value_type_code => l_adr_value_type_code
23842: , p_side => 'NA'
23843: );
23844:
23845: xla_ae_lines_pkg.set_ccid(
23846: p_code_combination_id => l_ccid
23847: , p_value_type_code => l_adr_value_type_code
23848: , p_transaction_coa_id => l_adr_transaction_coa_id
23849: , p_accounting_coa_id => l_adr_accounting_coa_id
23874: );
23875:
23876: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
23877:
23878: xla_ae_lines_pkg.set_segment(
23879: p_to_segment_code => 'GL_BALANCING'
23880: , p_segment_value => l_segment
23881: , p_from_segment_code => l_adr_value_segment_code
23882: , p_from_combination_id => l_adr_value_combination_id
23905:
23906: --
23907: -- Update the line information that should be overwritten
23908: --
23909: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23910: p_header_num => 1);
23911: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23912:
23913: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23907: -- Update the line information that should be overwritten
23908: --
23909: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23910: p_header_num => 1);
23911: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23912:
23913: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23914:
23915: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23909: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23910: p_header_num => 1);
23911: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23912:
23913: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23914:
23915: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23916: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23917: END IF;
23912:
23913: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23914:
23915: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23916: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23917: END IF;
23918:
23919: --
23920: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23919: --
23920: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23921: --
23922: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
23923: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
23924: ELSE
23925: ---------------------------------------------------------------------------------------------------
23926: -- 4262811a Switch Sign
23927: ---------------------------------------------------------------------------------------------------
23924: ELSE
23925: ---------------------------------------------------------------------------------------------------
23926: -- 4262811a Switch Sign
23927: ---------------------------------------------------------------------------------------------------
23928: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23925: ---------------------------------------------------------------------------------------------------
23926: -- 4262811a Switch Sign
23927: ---------------------------------------------------------------------------------------------------
23928: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23933: -- 5132302
23926: -- 4262811a Switch Sign
23927: ---------------------------------------------------------------------------------------------------
23928: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23933: -- 5132302
23934: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23927: ---------------------------------------------------------------------------------------------------
23928: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23933: -- 5132302
23934: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23935: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23928: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23933: -- 5132302
23934: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23935: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23936:
23930: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23933: -- 5132302
23934: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23935: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23936:
23937: END IF;
23938:
23931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23932: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23933: -- 5132302
23934: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23935: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23936:
23937: END IF;
23938:
23939: -- 4955764
23936:
23937: END IF;
23938:
23939: -- 4955764
23940: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23941: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23942:
23943:
23944: XLA_AE_LINES_PKG.ValidateCurrentLine;
23940: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23941: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23942:
23943:
23944: XLA_AE_LINES_PKG.ValidateCurrentLine;
23945: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23946:
23947: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23948: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23941: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23942:
23943:
23944: XLA_AE_LINES_PKG.ValidateCurrentLine;
23945: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23946:
23947: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23948: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23949: ,p_balance_type_code => l_balance_type_code);
24086: --
24087: -- bulk performance
24088: --
24089: l_balance_type_code VARCHAR2(1);
24090: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
24091: l_log_module VARCHAR2(240);
24092:
24093: --
24094: -- Upgrade strategy
24163: ') = 'CHARGES')
24164: THEN
24165:
24166: --
24167: XLA_AE_LINES_PKG.SetNewLine;
24168:
24169: p_balance_type_code := l_balance_type_code;
24170: -- set the flag so later we will know whether the gain loss line needs to be created
24171:
24175:
24176: --
24177: -- bulk performance
24178: --
24179: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
24180: p_header_num => 0); -- 4262811
24181: --
24182: -- set accounting line options
24183: --
24180: p_header_num => 0); -- 4262811
24181: --
24182: -- set accounting line options
24183: --
24184: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
24185: p_natural_side_code => 'D'
24186: , p_gain_or_loss_flag => 'N'
24187: , p_gl_transfer_mode_code => 'S'
24188: , p_acct_entry_type_code => 'A'
24194: --
24195: --
24196: -- set accounting line type info
24197: --
24198: xla_ae_lines_pkg.SetAcctLineType
24199: (p_component_type => l_component_type
24200: ,p_event_type_code => l_event_type_code
24201: ,p_line_definition_owner_code => l_line_definition_owner_code
24202: ,p_line_definition_code => l_line_definition_code
24208: ,p_event_class_code => l_event_class_code);
24209: --
24210: -- set accounting class
24211: --
24212: xla_ae_lines_pkg.SetAcctClass(
24213: p_accounting_class_code => 'RECEIVABLE'
24214: , p_ae_header_id => l_ae_header_id
24215: );
24216:
24216:
24217: --
24218: -- set rounding class
24219: --
24220: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24221: 'RECEIVABLE';
24222:
24223: --
24224: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24220: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24221: 'RECEIVABLE';
24222:
24223: --
24224: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24225: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24226: --
24227: -- bulk performance
24228: --
24221: 'RECEIVABLE';
24222:
24223: --
24224: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24225: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24226: --
24227: -- bulk performance
24228: --
24229: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24225: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24226: --
24227: -- bulk performance
24228: --
24229: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24230:
24231: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24232: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24233:
24227: -- bulk performance
24228: --
24229: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24230:
24231: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24232: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24233:
24234: -- 4955764
24235: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24231: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24232: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24233:
24234: -- 4955764
24235: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24236: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
24237:
24238: -- 4458381 Public Sector Enh
24239:
24267: l_rec_acct_attrs.array_char_value(11) := p_source_25;
24268: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
24269: l_rec_acct_attrs.array_num_value(12) := p_source_48;
24270:
24271: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24272: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24273:
24274: ---------------------------------------------------------------------------------------------------------------
24275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24268: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
24269: l_rec_acct_attrs.array_num_value(12) := p_source_48;
24270:
24271: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24272: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24273:
24274: ---------------------------------------------------------------------------------------------------------------
24275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24276: ---------------------------------------------------------------------------------------------------------------
24271: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24272: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24273:
24274: ---------------------------------------------------------------------------------------------------------------
24275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24276: ---------------------------------------------------------------------------------------------------------------
24277: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24278:
24279: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24273:
24274: ---------------------------------------------------------------------------------------------------------------
24275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24276: ---------------------------------------------------------------------------------------------------------------
24277: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24278:
24279: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24280: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24281:
24275: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24276: ---------------------------------------------------------------------------------------------------------------
24277: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24278:
24279: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24280: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24281:
24282: IF xla_accounting_cache_pkg.GetValueChar
24283: (p_source_code => 'LEDGER_CATEGORY_CODE'
24276: ---------------------------------------------------------------------------------------------------------------
24277: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24278:
24279: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24280: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24281:
24282: IF xla_accounting_cache_pkg.GetValueChar
24283: (p_source_code => 'LEDGER_CATEGORY_CODE'
24284: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
24287: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
24288: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
24289: )
24290: THEN
24291: xla_ae_lines_pkg.BflowUpgEntry
24292: (p_business_method_code => l_bflow_method_code
24293: ,p_business_class_code => l_bflow_class_code
24294: ,p_balance_type => l_balance_type_code);
24295: ELSE
24304: --
24305: -- call description
24306: --
24307:
24308: xla_ae_lines_pkg.SetLineDescription(
24309: p_ae_header_id => l_ae_header_id
24310: ,p_description => Description_1 (
24311: p_application_id => p_application_id
24312: , p_ae_header_id => l_ae_header_id
24336: , x_value_type_code => l_adr_value_type_code
24337: , p_side => 'NA'
24338: );
24339:
24340: xla_ae_lines_pkg.set_ccid(
24341: p_code_combination_id => l_ccid
24342: , p_value_type_code => l_adr_value_type_code
24343: , p_transaction_coa_id => l_adr_transaction_coa_id
24344: , p_accounting_coa_id => l_adr_accounting_coa_id
24369: );
24370:
24371: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
24372:
24373: xla_ae_lines_pkg.set_segment(
24374: p_to_segment_code => 'GL_BALANCING'
24375: , p_segment_value => l_segment
24376: , p_from_segment_code => l_adr_value_segment_code
24377: , p_from_combination_id => l_adr_value_combination_id
24413: xla_accounting_err_pkg.build_message
24414: (p_appli_s_name => 'XLA'
24415: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
24416: ,p_token_1 => 'LINE_NUMBER'
24417: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
24418: ,p_token_2 => 'LINE_TYPE_NAME'
24419: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
24420: l_component_type
24421: ,l_component_code
24449: --
24450: --
24451: ------------------------------------------------------------------------------------------------
24452: -- 4219869 Business Flow
24453: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24454: -- Prior Entry. Currently, the following code is always generated.
24455: ------------------------------------------------------------------------------------------------
24456: XLA_AE_LINES_PKG.ValidateCurrentLine;
24457:
24452: -- 4219869 Business Flow
24453: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24454: -- Prior Entry. Currently, the following code is always generated.
24455: ------------------------------------------------------------------------------------------------
24456: XLA_AE_LINES_PKG.ValidateCurrentLine;
24457:
24458: ------------------------------------------------------------------------------------
24459: -- 4219869 Business Flow
24460: -- Populated credit and debit amounts -- Need to generate this within IF
24458: ------------------------------------------------------------------------------------
24459: -- 4219869 Business Flow
24460: -- Populated credit and debit amounts -- Need to generate this within IF
24461: ------------------------------------------------------------------------------------
24462: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24463:
24464: ----------------------------------------------------------------------------------
24465: -- 4219869 Business Flow
24466: -- Update journal entry status -- Need to generate this within IF
24490: -- To allow MPA report to determine if it should generate report process
24491: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24492: ------------------------------------------------------------------------------------------
24493:
24494: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24495: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24496: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24497: -- call ADRs
24498: -- Bug 4922099
24491: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24492: ------------------------------------------------------------------------------------------
24493:
24494: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24495: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24496: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24497: -- call ADRs
24498: -- Bug 4922099
24499: --
24515: , x_value_type_code => l_adr_value_type_code
24516: , p_side => 'NA'
24517: );
24518:
24519: xla_ae_lines_pkg.set_ccid(
24520: p_code_combination_id => l_ccid
24521: , p_value_type_code => l_adr_value_type_code
24522: , p_transaction_coa_id => l_adr_transaction_coa_id
24523: , p_accounting_coa_id => l_adr_accounting_coa_id
24548: );
24549:
24550: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
24551:
24552: xla_ae_lines_pkg.set_segment(
24553: p_to_segment_code => 'GL_BALANCING'
24554: , p_segment_value => l_segment
24555: , p_from_segment_code => l_adr_value_segment_code
24556: , p_from_combination_id => l_adr_value_combination_id
24579:
24580: --
24581: -- Update the line information that should be overwritten
24582: --
24583: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24584: p_header_num => 1);
24585: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24586:
24587: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24581: -- Update the line information that should be overwritten
24582: --
24583: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24584: p_header_num => 1);
24585: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24586:
24587: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24588:
24589: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24583: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24584: p_header_num => 1);
24585: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24586:
24587: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24588:
24589: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24590: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24591: END IF;
24586:
24587: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24588:
24589: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24590: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24591: END IF;
24592:
24593: --
24594: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24593: --
24594: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24595: --
24596: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
24597: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
24598: ELSE
24599: ---------------------------------------------------------------------------------------------------
24600: -- 4262811a Switch Sign
24601: ---------------------------------------------------------------------------------------------------
24598: ELSE
24599: ---------------------------------------------------------------------------------------------------
24600: -- 4262811a Switch Sign
24601: ---------------------------------------------------------------------------------------------------
24602: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24603: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24604: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24605: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24606: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24599: ---------------------------------------------------------------------------------------------------
24600: -- 4262811a Switch Sign
24601: ---------------------------------------------------------------------------------------------------
24602: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24603: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24604: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24605: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24606: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24607: -- 5132302
24600: -- 4262811a Switch Sign
24601: ---------------------------------------------------------------------------------------------------
24602: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24603: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24604: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24605: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24606: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24607: -- 5132302
24608: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24601: ---------------------------------------------------------------------------------------------------
24602: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24603: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24604: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24605: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24606: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24607: -- 5132302
24608: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24602: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24603: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24604: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24605: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24606: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24607: -- 5132302
24608: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24610:
24604: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24605: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24606: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24607: -- 5132302
24608: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24610:
24611: END IF;
24612:
24605: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24606: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24607: -- 5132302
24608: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24610:
24611: END IF;
24612:
24613: -- 4955764
24610:
24611: END IF;
24612:
24613: -- 4955764
24614: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24615: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24616:
24617:
24618: XLA_AE_LINES_PKG.ValidateCurrentLine;
24614: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24615: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24616:
24617:
24618: XLA_AE_LINES_PKG.ValidateCurrentLine;
24619: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24620:
24621: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24622: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24615: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24616:
24617:
24618: XLA_AE_LINES_PKG.ValidateCurrentLine;
24619: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24620:
24621: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24622: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24623: ,p_balance_type_code => l_balance_type_code);
24752: --
24753: -- bulk performance
24754: --
24755: l_balance_type_code VARCHAR2(1);
24756: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
24757: l_log_module VARCHAR2(240);
24758:
24759: --
24760: -- Upgrade strategy
24822: ') = 'N'
24823: THEN
24824:
24825: --
24826: XLA_AE_LINES_PKG.SetNewLine;
24827:
24828: p_balance_type_code := l_balance_type_code;
24829: -- set the flag so later we will know whether the gain loss line needs to be created
24830:
24834:
24835: --
24836: -- bulk performance
24837: --
24838: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
24839: p_header_num => 0); -- 4262811
24840: --
24841: -- set accounting line options
24842: --
24839: p_header_num => 0); -- 4262811
24840: --
24841: -- set accounting line options
24842: --
24843: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
24844: p_natural_side_code => 'D'
24845: , p_gain_or_loss_flag => 'N'
24846: , p_gl_transfer_mode_code => 'S'
24847: , p_acct_entry_type_code => 'A'
24853: --
24854: --
24855: -- set accounting line type info
24856: --
24857: xla_ae_lines_pkg.SetAcctLineType
24858: (p_component_type => l_component_type
24859: ,p_event_type_code => l_event_type_code
24860: ,p_line_definition_owner_code => l_line_definition_owner_code
24861: ,p_line_definition_code => l_line_definition_code
24867: ,p_event_class_code => l_event_class_code);
24868: --
24869: -- set accounting class
24870: --
24871: xla_ae_lines_pkg.SetAcctClass(
24872: p_accounting_class_code => 'BANK_CHG'
24873: , p_ae_header_id => l_ae_header_id
24874: );
24875:
24875:
24876: --
24877: -- set rounding class
24878: --
24879: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24880: 'RECEIVABLE';
24881:
24882: --
24883: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24879: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24880: 'RECEIVABLE';
24881:
24882: --
24883: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24884: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24885: --
24886: -- bulk performance
24887: --
24880: 'RECEIVABLE';
24881:
24882: --
24883: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24884: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24885: --
24886: -- bulk performance
24887: --
24888: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24884: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24885: --
24886: -- bulk performance
24887: --
24888: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24889:
24890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24891: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24892:
24886: -- bulk performance
24887: --
24888: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24889:
24890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24891: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24892:
24893: -- 4955764
24894: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24891: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24892:
24893: -- 4955764
24894: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24895: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
24896:
24897: -- 4458381 Public Sector Enh
24898:
24918: l_rec_acct_attrs.array_char_value(7) := p_source_21;
24919: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
24920: l_rec_acct_attrs.array_num_value(8) := p_source_22;
24921:
24922: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24923: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24924:
24925: ---------------------------------------------------------------------------------------------------------------
24926: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24919: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
24920: l_rec_acct_attrs.array_num_value(8) := p_source_22;
24921:
24922: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24923: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24924:
24925: ---------------------------------------------------------------------------------------------------------------
24926: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24927: ---------------------------------------------------------------------------------------------------------------
24922: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24923: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24924:
24925: ---------------------------------------------------------------------------------------------------------------
24926: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24927: ---------------------------------------------------------------------------------------------------------------
24928: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24929:
24930: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24924:
24925: ---------------------------------------------------------------------------------------------------------------
24926: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24927: ---------------------------------------------------------------------------------------------------------------
24928: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24929:
24930: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24931: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24932:
24926: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24927: ---------------------------------------------------------------------------------------------------------------
24928: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24929:
24930: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24931: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24932:
24933: IF xla_accounting_cache_pkg.GetValueChar
24934: (p_source_code => 'LEDGER_CATEGORY_CODE'
24927: ---------------------------------------------------------------------------------------------------------------
24928: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24929:
24930: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24931: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24932:
24933: IF xla_accounting_cache_pkg.GetValueChar
24934: (p_source_code => 'LEDGER_CATEGORY_CODE'
24935: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
24938: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
24939: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
24940: )
24941: THEN
24942: xla_ae_lines_pkg.BflowUpgEntry
24943: (p_business_method_code => l_bflow_method_code
24944: ,p_business_class_code => l_bflow_class_code
24945: ,p_balance_type => l_balance_type_code);
24946: ELSE
24955: --
24956: -- call description
24957: --
24958:
24959: xla_ae_lines_pkg.SetLineDescription(
24960: p_ae_header_id => l_ae_header_id
24961: ,p_description => Description_1 (
24962: p_application_id => p_application_id
24963: , p_ae_header_id => l_ae_header_id
24987: , x_value_type_code => l_adr_value_type_code
24988: , p_side => 'NA'
24989: );
24990:
24991: xla_ae_lines_pkg.set_ccid(
24992: p_code_combination_id => l_ccid
24993: , p_value_type_code => l_adr_value_type_code
24994: , p_transaction_coa_id => l_adr_transaction_coa_id
24995: , p_accounting_coa_id => l_adr_accounting_coa_id
25020: );
25021:
25022: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25023:
25024: xla_ae_lines_pkg.set_segment(
25025: p_to_segment_code => 'GL_BALANCING'
25026: , p_segment_value => l_segment
25027: , p_from_segment_code => l_adr_value_segment_code
25028: , p_from_combination_id => l_adr_value_combination_id
25064: xla_accounting_err_pkg.build_message
25065: (p_appli_s_name => 'XLA'
25066: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
25067: ,p_token_1 => 'LINE_NUMBER'
25068: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
25069: ,p_token_2 => 'LINE_TYPE_NAME'
25070: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
25071: l_component_type
25072: ,l_component_code
25100: --
25101: --
25102: ------------------------------------------------------------------------------------------------
25103: -- 4219869 Business Flow
25104: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25105: -- Prior Entry. Currently, the following code is always generated.
25106: ------------------------------------------------------------------------------------------------
25107: XLA_AE_LINES_PKG.ValidateCurrentLine;
25108:
25103: -- 4219869 Business Flow
25104: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25105: -- Prior Entry. Currently, the following code is always generated.
25106: ------------------------------------------------------------------------------------------------
25107: XLA_AE_LINES_PKG.ValidateCurrentLine;
25108:
25109: ------------------------------------------------------------------------------------
25110: -- 4219869 Business Flow
25111: -- Populated credit and debit amounts -- Need to generate this within IF
25109: ------------------------------------------------------------------------------------
25110: -- 4219869 Business Flow
25111: -- Populated credit and debit amounts -- Need to generate this within IF
25112: ------------------------------------------------------------------------------------
25113: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25114:
25115: ----------------------------------------------------------------------------------
25116: -- 4219869 Business Flow
25117: -- Update journal entry status -- Need to generate this within IF
25141: -- To allow MPA report to determine if it should generate report process
25142: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25143: ------------------------------------------------------------------------------------------
25144:
25145: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25146: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25147: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25148: -- call ADRs
25149: -- Bug 4922099
25142: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25143: ------------------------------------------------------------------------------------------
25144:
25145: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25146: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25147: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25148: -- call ADRs
25149: -- Bug 4922099
25150: --
25166: , x_value_type_code => l_adr_value_type_code
25167: , p_side => 'NA'
25168: );
25169:
25170: xla_ae_lines_pkg.set_ccid(
25171: p_code_combination_id => l_ccid
25172: , p_value_type_code => l_adr_value_type_code
25173: , p_transaction_coa_id => l_adr_transaction_coa_id
25174: , p_accounting_coa_id => l_adr_accounting_coa_id
25199: );
25200:
25201: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25202:
25203: xla_ae_lines_pkg.set_segment(
25204: p_to_segment_code => 'GL_BALANCING'
25205: , p_segment_value => l_segment
25206: , p_from_segment_code => l_adr_value_segment_code
25207: , p_from_combination_id => l_adr_value_combination_id
25230:
25231: --
25232: -- Update the line information that should be overwritten
25233: --
25234: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25235: p_header_num => 1);
25236: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25237:
25238: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25232: -- Update the line information that should be overwritten
25233: --
25234: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25235: p_header_num => 1);
25236: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25237:
25238: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25239:
25240: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25234: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25235: p_header_num => 1);
25236: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25237:
25238: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25239:
25240: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25241: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25242: END IF;
25237:
25238: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25239:
25240: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25241: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25242: END IF;
25243:
25244: --
25245: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25244: --
25245: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25246: --
25247: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
25248: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
25249: ELSE
25250: ---------------------------------------------------------------------------------------------------
25251: -- 4262811a Switch Sign
25252: ---------------------------------------------------------------------------------------------------
25249: ELSE
25250: ---------------------------------------------------------------------------------------------------
25251: -- 4262811a Switch Sign
25252: ---------------------------------------------------------------------------------------------------
25253: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25254: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25256: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25250: ---------------------------------------------------------------------------------------------------
25251: -- 4262811a Switch Sign
25252: ---------------------------------------------------------------------------------------------------
25253: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25254: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25256: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25258: -- 5132302
25251: -- 4262811a Switch Sign
25252: ---------------------------------------------------------------------------------------------------
25253: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25254: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25256: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25258: -- 5132302
25259: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25252: ---------------------------------------------------------------------------------------------------
25253: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25254: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25256: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25258: -- 5132302
25259: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25260: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25253: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25254: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25256: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25258: -- 5132302
25259: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25260: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25261:
25255: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25256: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25258: -- 5132302
25259: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25260: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25261:
25262: END IF;
25263:
25256: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25257: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25258: -- 5132302
25259: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25260: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25261:
25262: END IF;
25263:
25264: -- 4955764
25261:
25262: END IF;
25263:
25264: -- 4955764
25265: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25266: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25267:
25268:
25269: XLA_AE_LINES_PKG.ValidateCurrentLine;
25265: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25266: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25267:
25268:
25269: XLA_AE_LINES_PKG.ValidateCurrentLine;
25270: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25271:
25272: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25273: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25266: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25267:
25268:
25269: XLA_AE_LINES_PKG.ValidateCurrentLine;
25270: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25271:
25272: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25273: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25274: ,p_balance_type_code => l_balance_type_code);
25407: --
25408: -- bulk performance
25409: --
25410: l_balance_type_code VARCHAR2(1);
25411: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
25412: l_log_module VARCHAR2(240);
25413:
25414: --
25415: -- Upgrade strategy
25483: ') = 'N'
25484: THEN
25485:
25486: --
25487: XLA_AE_LINES_PKG.SetNewLine;
25488:
25489: p_balance_type_code := l_balance_type_code;
25490: -- set the flag so later we will know whether the gain loss line needs to be created
25491:
25495:
25496: --
25497: -- bulk performance
25498: --
25499: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
25500: p_header_num => 0); -- 4262811
25501: --
25502: -- set accounting line options
25503: --
25500: p_header_num => 0); -- 4262811
25501: --
25502: -- set accounting line options
25503: --
25504: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
25505: p_natural_side_code => 'C'
25506: , p_gain_or_loss_flag => 'N'
25507: , p_gl_transfer_mode_code => 'S'
25508: , p_acct_entry_type_code => 'A'
25514: --
25515: --
25516: -- set accounting line type info
25517: --
25518: xla_ae_lines_pkg.SetAcctLineType
25519: (p_component_type => l_component_type
25520: ,p_event_type_code => l_event_type_code
25521: ,p_line_definition_owner_code => l_line_definition_owner_code
25522: ,p_line_definition_code => l_line_definition_code
25528: ,p_event_class_code => l_event_class_code);
25529: --
25530: -- set accounting class
25531: --
25532: xla_ae_lines_pkg.SetAcctClass(
25533: p_accounting_class_code => 'CASH'
25534: , p_ae_header_id => l_ae_header_id
25535: );
25536:
25536:
25537: --
25538: -- set rounding class
25539: --
25540: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25541: 'RECEIVABLE';
25542:
25543: --
25544: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25540: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25541: 'RECEIVABLE';
25542:
25543: --
25544: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25545: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25546: --
25547: -- bulk performance
25548: --
25541: 'RECEIVABLE';
25542:
25543: --
25544: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25545: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25546: --
25547: -- bulk performance
25548: --
25549: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25545: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25546: --
25547: -- bulk performance
25548: --
25549: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25550:
25551: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25552: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25553:
25547: -- bulk performance
25548: --
25549: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25550:
25551: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25552: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25553:
25554: -- 4955764
25555: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25551: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25552: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25553:
25554: -- 4955764
25555: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25556: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
25557:
25558: -- 4458381 Public Sector Enh
25559:
25579: l_rec_acct_attrs.array_char_value(7) := p_source_21;
25580: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
25581: l_rec_acct_attrs.array_num_value(8) := p_source_22;
25582:
25583: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25584: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25585:
25586: ---------------------------------------------------------------------------------------------------------------
25587: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25580: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
25581: l_rec_acct_attrs.array_num_value(8) := p_source_22;
25582:
25583: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25584: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25585:
25586: ---------------------------------------------------------------------------------------------------------------
25587: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25588: ---------------------------------------------------------------------------------------------------------------
25583: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25584: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25585:
25586: ---------------------------------------------------------------------------------------------------------------
25587: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25588: ---------------------------------------------------------------------------------------------------------------
25589: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25590:
25591: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25585:
25586: ---------------------------------------------------------------------------------------------------------------
25587: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25588: ---------------------------------------------------------------------------------------------------------------
25589: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25590:
25591: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25592: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25593:
25587: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25588: ---------------------------------------------------------------------------------------------------------------
25589: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25590:
25591: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25592: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25593:
25594: IF xla_accounting_cache_pkg.GetValueChar
25595: (p_source_code => 'LEDGER_CATEGORY_CODE'
25588: ---------------------------------------------------------------------------------------------------------------
25589: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25590:
25591: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25592: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25593:
25594: IF xla_accounting_cache_pkg.GetValueChar
25595: (p_source_code => 'LEDGER_CATEGORY_CODE'
25596: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
25599: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
25600: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
25601: )
25602: THEN
25603: xla_ae_lines_pkg.BflowUpgEntry
25604: (p_business_method_code => l_bflow_method_code
25605: ,p_business_class_code => l_bflow_class_code
25606: ,p_balance_type => l_balance_type_code);
25607: ELSE
25616: --
25617: -- call description
25618: --
25619:
25620: xla_ae_lines_pkg.SetLineDescription(
25621: p_ae_header_id => l_ae_header_id
25622: ,p_description => Description_1 (
25623: p_application_id => p_application_id
25624: , p_ae_header_id => l_ae_header_id
25648: , x_value_type_code => l_adr_value_type_code
25649: , p_side => 'NA'
25650: );
25651:
25652: xla_ae_lines_pkg.set_ccid(
25653: p_code_combination_id => l_ccid
25654: , p_value_type_code => l_adr_value_type_code
25655: , p_transaction_coa_id => l_adr_transaction_coa_id
25656: , p_accounting_coa_id => l_adr_accounting_coa_id
25681: );
25682:
25683: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25684:
25685: xla_ae_lines_pkg.set_segment(
25686: p_to_segment_code => 'GL_BALANCING'
25687: , p_segment_value => l_segment
25688: , p_from_segment_code => l_adr_value_segment_code
25689: , p_from_combination_id => l_adr_value_combination_id
25725: xla_accounting_err_pkg.build_message
25726: (p_appli_s_name => 'XLA'
25727: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
25728: ,p_token_1 => 'LINE_NUMBER'
25729: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
25730: ,p_token_2 => 'LINE_TYPE_NAME'
25731: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
25732: l_component_type
25733: ,l_component_code
25761: --
25762: --
25763: ------------------------------------------------------------------------------------------------
25764: -- 4219869 Business Flow
25765: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25766: -- Prior Entry. Currently, the following code is always generated.
25767: ------------------------------------------------------------------------------------------------
25768: XLA_AE_LINES_PKG.ValidateCurrentLine;
25769:
25764: -- 4219869 Business Flow
25765: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25766: -- Prior Entry. Currently, the following code is always generated.
25767: ------------------------------------------------------------------------------------------------
25768: XLA_AE_LINES_PKG.ValidateCurrentLine;
25769:
25770: ------------------------------------------------------------------------------------
25771: -- 4219869 Business Flow
25772: -- Populated credit and debit amounts -- Need to generate this within IF
25770: ------------------------------------------------------------------------------------
25771: -- 4219869 Business Flow
25772: -- Populated credit and debit amounts -- Need to generate this within IF
25773: ------------------------------------------------------------------------------------
25774: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25775:
25776: ----------------------------------------------------------------------------------
25777: -- 4219869 Business Flow
25778: -- Update journal entry status -- Need to generate this within IF
25802: -- To allow MPA report to determine if it should generate report process
25803: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25804: ------------------------------------------------------------------------------------------
25805:
25806: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25807: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25808: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25809: -- call ADRs
25810: -- Bug 4922099
25803: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25804: ------------------------------------------------------------------------------------------
25805:
25806: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25807: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25808: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25809: -- call ADRs
25810: -- Bug 4922099
25811: --
25827: , x_value_type_code => l_adr_value_type_code
25828: , p_side => 'NA'
25829: );
25830:
25831: xla_ae_lines_pkg.set_ccid(
25832: p_code_combination_id => l_ccid
25833: , p_value_type_code => l_adr_value_type_code
25834: , p_transaction_coa_id => l_adr_transaction_coa_id
25835: , p_accounting_coa_id => l_adr_accounting_coa_id
25860: );
25861:
25862: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25863:
25864: xla_ae_lines_pkg.set_segment(
25865: p_to_segment_code => 'GL_BALANCING'
25866: , p_segment_value => l_segment
25867: , p_from_segment_code => l_adr_value_segment_code
25868: , p_from_combination_id => l_adr_value_combination_id
25891:
25892: --
25893: -- Update the line information that should be overwritten
25894: --
25895: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25896: p_header_num => 1);
25897: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25898:
25899: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25893: -- Update the line information that should be overwritten
25894: --
25895: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25896: p_header_num => 1);
25897: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25898:
25899: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25900:
25901: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25895: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25896: p_header_num => 1);
25897: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25898:
25899: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25900:
25901: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25902: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25903: END IF;
25898:
25899: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25900:
25901: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25902: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25903: END IF;
25904:
25905: --
25906: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25905: --
25906: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25907: --
25908: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
25909: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
25910: ELSE
25911: ---------------------------------------------------------------------------------------------------
25912: -- 4262811a Switch Sign
25913: ---------------------------------------------------------------------------------------------------
25910: ELSE
25911: ---------------------------------------------------------------------------------------------------
25912: -- 4262811a Switch Sign
25913: ---------------------------------------------------------------------------------------------------
25914: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25915: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25916: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25917: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25918: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25911: ---------------------------------------------------------------------------------------------------
25912: -- 4262811a Switch Sign
25913: ---------------------------------------------------------------------------------------------------
25914: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25915: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25916: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25917: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25918: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25919: -- 5132302
25912: -- 4262811a Switch Sign
25913: ---------------------------------------------------------------------------------------------------
25914: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25915: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25916: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25917: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25918: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25919: -- 5132302
25920: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25913: ---------------------------------------------------------------------------------------------------
25914: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25915: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25916: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25917: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25918: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25919: -- 5132302
25920: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25921: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25914: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25915: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25916: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25917: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25918: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25919: -- 5132302
25920: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25921: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25922:
25916: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25917: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25918: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25919: -- 5132302
25920: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25921: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25922:
25923: END IF;
25924:
25917: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25918: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25919: -- 5132302
25920: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25921: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25922:
25923: END IF;
25924:
25925: -- 4955764
25922:
25923: END IF;
25924:
25925: -- 4955764
25926: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25927: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25928:
25929:
25930: XLA_AE_LINES_PKG.ValidateCurrentLine;
25926: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25927: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25928:
25929:
25930: XLA_AE_LINES_PKG.ValidateCurrentLine;
25931: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25932:
25933: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25934: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25927: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25928:
25929:
25930: XLA_AE_LINES_PKG.ValidateCurrentLine;
25931: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25932:
25933: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25934: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25935: ,p_balance_type_code => l_balance_type_code);
26066: --
26067: -- bulk performance
26068: --
26069: l_balance_type_code VARCHAR2(1);
26070: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
26071: l_log_module VARCHAR2(240);
26072:
26073: --
26074: -- Upgrade strategy
26138: ') = 'Y'
26139: THEN
26140:
26141: --
26142: XLA_AE_LINES_PKG.SetNewLine;
26143:
26144: p_balance_type_code := l_balance_type_code;
26145: -- set the flag so later we will know whether the gain loss line needs to be created
26146:
26150:
26151: --
26152: -- bulk performance
26153: --
26154: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
26155: p_header_num => 0); -- 4262811
26156: --
26157: -- set accounting line options
26158: --
26155: p_header_num => 0); -- 4262811
26156: --
26157: -- set accounting line options
26158: --
26159: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
26160: p_natural_side_code => 'C'
26161: , p_gain_or_loss_flag => 'N'
26162: , p_gl_transfer_mode_code => 'S'
26163: , p_acct_entry_type_code => 'A'
26169: --
26170: --
26171: -- set accounting line type info
26172: --
26173: xla_ae_lines_pkg.SetAcctLineType
26174: (p_component_type => l_component_type
26175: ,p_event_type_code => l_event_type_code
26176: ,p_line_definition_owner_code => l_line_definition_owner_code
26177: ,p_line_definition_code => l_line_definition_code
26183: ,p_event_class_code => l_event_class_code);
26184: --
26185: -- set accounting class
26186: --
26187: xla_ae_lines_pkg.SetAcctClass(
26188: p_accounting_class_code => 'CASH'
26189: , p_ae_header_id => l_ae_header_id
26190: );
26191:
26191:
26192: --
26193: -- set rounding class
26194: --
26195: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26196: 'RECEIVABLE';
26197:
26198: --
26199: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26195: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26196: 'RECEIVABLE';
26197:
26198: --
26199: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26200: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26201: --
26202: -- bulk performance
26203: --
26196: 'RECEIVABLE';
26197:
26198: --
26199: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26200: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26201: --
26202: -- bulk performance
26203: --
26204: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26200: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26201: --
26202: -- bulk performance
26203: --
26204: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26205:
26206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26207: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26208:
26202: -- bulk performance
26203: --
26204: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26205:
26206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26207: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26208:
26209: -- 4955764
26210: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26207: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26208:
26209: -- 4955764
26210: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26211: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
26212:
26213: -- 4458381 Public Sector Enh
26214:
26234: l_rec_acct_attrs.array_char_value(7) := p_source_21;
26235: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26236: l_rec_acct_attrs.array_num_value(8) := p_source_22;
26237:
26238: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26239: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26240:
26241: ---------------------------------------------------------------------------------------------------------------
26242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26235: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26236: l_rec_acct_attrs.array_num_value(8) := p_source_22;
26237:
26238: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26239: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26240:
26241: ---------------------------------------------------------------------------------------------------------------
26242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26243: ---------------------------------------------------------------------------------------------------------------
26238: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26239: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26240:
26241: ---------------------------------------------------------------------------------------------------------------
26242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26243: ---------------------------------------------------------------------------------------------------------------
26244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26245:
26246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26240:
26241: ---------------------------------------------------------------------------------------------------------------
26242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26243: ---------------------------------------------------------------------------------------------------------------
26244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26245:
26246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26247: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26248:
26242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26243: ---------------------------------------------------------------------------------------------------------------
26244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26245:
26246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26247: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26248:
26249: IF xla_accounting_cache_pkg.GetValueChar
26250: (p_source_code => 'LEDGER_CATEGORY_CODE'
26243: ---------------------------------------------------------------------------------------------------------------
26244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26245:
26246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26247: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26248:
26249: IF xla_accounting_cache_pkg.GetValueChar
26250: (p_source_code => 'LEDGER_CATEGORY_CODE'
26251: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
26254: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
26255: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
26256: )
26257: THEN
26258: xla_ae_lines_pkg.BflowUpgEntry
26259: (p_business_method_code => l_bflow_method_code
26260: ,p_business_class_code => l_bflow_class_code
26261: ,p_balance_type => l_balance_type_code);
26262: ELSE
26271: --
26272: -- call description
26273: --
26274:
26275: xla_ae_lines_pkg.SetLineDescription(
26276: p_ae_header_id => l_ae_header_id
26277: ,p_description => Description_1 (
26278: p_application_id => p_application_id
26279: , p_ae_header_id => l_ae_header_id
26303: , x_value_type_code => l_adr_value_type_code
26304: , p_side => 'NA'
26305: );
26306:
26307: xla_ae_lines_pkg.set_ccid(
26308: p_code_combination_id => l_ccid
26309: , p_value_type_code => l_adr_value_type_code
26310: , p_transaction_coa_id => l_adr_transaction_coa_id
26311: , p_accounting_coa_id => l_adr_accounting_coa_id
26336: );
26337:
26338: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
26339:
26340: xla_ae_lines_pkg.set_segment(
26341: p_to_segment_code => 'GL_BALANCING'
26342: , p_segment_value => l_segment
26343: , p_from_segment_code => l_adr_value_segment_code
26344: , p_from_combination_id => l_adr_value_combination_id
26380: xla_accounting_err_pkg.build_message
26381: (p_appli_s_name => 'XLA'
26382: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
26383: ,p_token_1 => 'LINE_NUMBER'
26384: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
26385: ,p_token_2 => 'LINE_TYPE_NAME'
26386: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
26387: l_component_type
26388: ,l_component_code
26416: --
26417: --
26418: ------------------------------------------------------------------------------------------------
26419: -- 4219869 Business Flow
26420: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26421: -- Prior Entry. Currently, the following code is always generated.
26422: ------------------------------------------------------------------------------------------------
26423: XLA_AE_LINES_PKG.ValidateCurrentLine;
26424:
26419: -- 4219869 Business Flow
26420: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26421: -- Prior Entry. Currently, the following code is always generated.
26422: ------------------------------------------------------------------------------------------------
26423: XLA_AE_LINES_PKG.ValidateCurrentLine;
26424:
26425: ------------------------------------------------------------------------------------
26426: -- 4219869 Business Flow
26427: -- Populated credit and debit amounts -- Need to generate this within IF
26425: ------------------------------------------------------------------------------------
26426: -- 4219869 Business Flow
26427: -- Populated credit and debit amounts -- Need to generate this within IF
26428: ------------------------------------------------------------------------------------
26429: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26430:
26431: ----------------------------------------------------------------------------------
26432: -- 4219869 Business Flow
26433: -- Update journal entry status -- Need to generate this within IF
26457: -- To allow MPA report to determine if it should generate report process
26458: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26459: ------------------------------------------------------------------------------------------
26460:
26461: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26462: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26463: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26464: -- call ADRs
26465: -- Bug 4922099
26458: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26459: ------------------------------------------------------------------------------------------
26460:
26461: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26462: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26463: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26464: -- call ADRs
26465: -- Bug 4922099
26466: --
26482: , x_value_type_code => l_adr_value_type_code
26483: , p_side => 'NA'
26484: );
26485:
26486: xla_ae_lines_pkg.set_ccid(
26487: p_code_combination_id => l_ccid
26488: , p_value_type_code => l_adr_value_type_code
26489: , p_transaction_coa_id => l_adr_transaction_coa_id
26490: , p_accounting_coa_id => l_adr_accounting_coa_id
26515: );
26516:
26517: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
26518:
26519: xla_ae_lines_pkg.set_segment(
26520: p_to_segment_code => 'GL_BALANCING'
26521: , p_segment_value => l_segment
26522: , p_from_segment_code => l_adr_value_segment_code
26523: , p_from_combination_id => l_adr_value_combination_id
26546:
26547: --
26548: -- Update the line information that should be overwritten
26549: --
26550: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26551: p_header_num => 1);
26552: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26553:
26554: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26548: -- Update the line information that should be overwritten
26549: --
26550: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26551: p_header_num => 1);
26552: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26553:
26554: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26555:
26556: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26550: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26551: p_header_num => 1);
26552: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26553:
26554: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26555:
26556: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26557: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26558: END IF;
26553:
26554: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26555:
26556: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26557: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26558: END IF;
26559:
26560: --
26561: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26560: --
26561: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26562: --
26563: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
26564: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
26565: ELSE
26566: ---------------------------------------------------------------------------------------------------
26567: -- 4262811a Switch Sign
26568: ---------------------------------------------------------------------------------------------------
26565: ELSE
26566: ---------------------------------------------------------------------------------------------------
26567: -- 4262811a Switch Sign
26568: ---------------------------------------------------------------------------------------------------
26569: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26570: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26572: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26573: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26566: ---------------------------------------------------------------------------------------------------
26567: -- 4262811a Switch Sign
26568: ---------------------------------------------------------------------------------------------------
26569: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26570: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26572: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26573: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26574: -- 5132302
26567: -- 4262811a Switch Sign
26568: ---------------------------------------------------------------------------------------------------
26569: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26570: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26572: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26573: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26574: -- 5132302
26575: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26568: ---------------------------------------------------------------------------------------------------
26569: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26570: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26572: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26573: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26574: -- 5132302
26575: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26576: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26569: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26570: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26572: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26573: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26574: -- 5132302
26575: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26576: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26577:
26571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26572: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26573: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26574: -- 5132302
26575: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26576: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26577:
26578: END IF;
26579:
26572: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26573: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26574: -- 5132302
26575: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26576: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26577:
26578: END IF;
26579:
26580: -- 4955764
26577:
26578: END IF;
26579:
26580: -- 4955764
26581: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26582: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26583:
26584:
26585: XLA_AE_LINES_PKG.ValidateCurrentLine;
26581: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26582: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26583:
26584:
26585: XLA_AE_LINES_PKG.ValidateCurrentLine;
26586: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26587:
26588: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26589: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26582: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26583:
26584:
26585: XLA_AE_LINES_PKG.ValidateCurrentLine;
26586: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26587:
26588: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26589: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26590: ,p_balance_type_code => l_balance_type_code);
26719: --
26720: -- bulk performance
26721: --
26722: l_balance_type_code VARCHAR2(1);
26723: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
26724: l_log_module VARCHAR2(240);
26725:
26726: --
26727: -- Upgrade strategy
26789: ') = 'Y'
26790: THEN
26791:
26792: --
26793: XLA_AE_LINES_PKG.SetNewLine;
26794:
26795: p_balance_type_code := l_balance_type_code;
26796: -- set the flag so later we will know whether the gain loss line needs to be created
26797:
26801:
26802: --
26803: -- bulk performance
26804: --
26805: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
26806: p_header_num => 0); -- 4262811
26807: --
26808: -- set accounting line options
26809: --
26806: p_header_num => 0); -- 4262811
26807: --
26808: -- set accounting line options
26809: --
26810: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
26811: p_natural_side_code => 'C'
26812: , p_gain_or_loss_flag => 'N'
26813: , p_gl_transfer_mode_code => 'S'
26814: , p_acct_entry_type_code => 'A'
26820: --
26821: --
26822: -- set accounting line type info
26823: --
26824: xla_ae_lines_pkg.SetAcctLineType
26825: (p_component_type => l_component_type
26826: ,p_event_type_code => l_event_type_code
26827: ,p_line_definition_owner_code => l_line_definition_owner_code
26828: ,p_line_definition_code => l_line_definition_code
26834: ,p_event_class_code => l_event_class_code);
26835: --
26836: -- set accounting class
26837: --
26838: xla_ae_lines_pkg.SetAcctClass(
26839: p_accounting_class_code => 'CONFIRMATION'
26840: , p_ae_header_id => l_ae_header_id
26841: );
26842:
26842:
26843: --
26844: -- set rounding class
26845: --
26846: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26847: 'RECEIVABLE';
26848:
26849: --
26850: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26846: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26847: 'RECEIVABLE';
26848:
26849: --
26850: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26851: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26852: --
26853: -- bulk performance
26854: --
26847: 'RECEIVABLE';
26848:
26849: --
26850: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26851: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26852: --
26853: -- bulk performance
26854: --
26855: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26851: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26852: --
26853: -- bulk performance
26854: --
26855: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26856:
26857: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26858: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26859:
26853: -- bulk performance
26854: --
26855: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26856:
26857: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26858: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26859:
26860: -- 4955764
26861: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26857: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26858: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26859:
26860: -- 4955764
26861: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26862: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
26863:
26864: -- 4458381 Public Sector Enh
26865:
26885: l_rec_acct_attrs.array_char_value(7) := p_source_21;
26886: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26887: l_rec_acct_attrs.array_num_value(8) := p_source_22;
26888:
26889: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26890: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26891:
26892: ---------------------------------------------------------------------------------------------------------------
26893: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26886: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26887: l_rec_acct_attrs.array_num_value(8) := p_source_22;
26888:
26889: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26890: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26891:
26892: ---------------------------------------------------------------------------------------------------------------
26893: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26894: ---------------------------------------------------------------------------------------------------------------
26889: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26890: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26891:
26892: ---------------------------------------------------------------------------------------------------------------
26893: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26894: ---------------------------------------------------------------------------------------------------------------
26895: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26896:
26897: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26891:
26892: ---------------------------------------------------------------------------------------------------------------
26893: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26894: ---------------------------------------------------------------------------------------------------------------
26895: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26896:
26897: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26898: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26899:
26893: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26894: ---------------------------------------------------------------------------------------------------------------
26895: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26896:
26897: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26898: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26899:
26900: IF xla_accounting_cache_pkg.GetValueChar
26901: (p_source_code => 'LEDGER_CATEGORY_CODE'
26894: ---------------------------------------------------------------------------------------------------------------
26895: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26896:
26897: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26898: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26899:
26900: IF xla_accounting_cache_pkg.GetValueChar
26901: (p_source_code => 'LEDGER_CATEGORY_CODE'
26902: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
26905: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
26906: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
26907: )
26908: THEN
26909: xla_ae_lines_pkg.BflowUpgEntry
26910: (p_business_method_code => l_bflow_method_code
26911: ,p_business_class_code => l_bflow_class_code
26912: ,p_balance_type => l_balance_type_code);
26913: ELSE
26922: --
26923: -- call description
26924: --
26925:
26926: xla_ae_lines_pkg.SetLineDescription(
26927: p_ae_header_id => l_ae_header_id
26928: ,p_description => Description_1 (
26929: p_application_id => p_application_id
26930: , p_ae_header_id => l_ae_header_id
26954: , x_value_type_code => l_adr_value_type_code
26955: , p_side => 'NA'
26956: );
26957:
26958: xla_ae_lines_pkg.set_ccid(
26959: p_code_combination_id => l_ccid
26960: , p_value_type_code => l_adr_value_type_code
26961: , p_transaction_coa_id => l_adr_transaction_coa_id
26962: , p_accounting_coa_id => l_adr_accounting_coa_id
26987: );
26988:
26989: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
26990:
26991: xla_ae_lines_pkg.set_segment(
26992: p_to_segment_code => 'GL_BALANCING'
26993: , p_segment_value => l_segment
26994: , p_from_segment_code => l_adr_value_segment_code
26995: , p_from_combination_id => l_adr_value_combination_id
27031: xla_accounting_err_pkg.build_message
27032: (p_appli_s_name => 'XLA'
27033: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
27034: ,p_token_1 => 'LINE_NUMBER'
27035: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
27036: ,p_token_2 => 'LINE_TYPE_NAME'
27037: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
27038: l_component_type
27039: ,l_component_code
27067: --
27068: --
27069: ------------------------------------------------------------------------------------------------
27070: -- 4219869 Business Flow
27071: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27072: -- Prior Entry. Currently, the following code is always generated.
27073: ------------------------------------------------------------------------------------------------
27074: XLA_AE_LINES_PKG.ValidateCurrentLine;
27075:
27070: -- 4219869 Business Flow
27071: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27072: -- Prior Entry. Currently, the following code is always generated.
27073: ------------------------------------------------------------------------------------------------
27074: XLA_AE_LINES_PKG.ValidateCurrentLine;
27075:
27076: ------------------------------------------------------------------------------------
27077: -- 4219869 Business Flow
27078: -- Populated credit and debit amounts -- Need to generate this within IF
27076: ------------------------------------------------------------------------------------
27077: -- 4219869 Business Flow
27078: -- Populated credit and debit amounts -- Need to generate this within IF
27079: ------------------------------------------------------------------------------------
27080: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27081:
27082: ----------------------------------------------------------------------------------
27083: -- 4219869 Business Flow
27084: -- Update journal entry status -- Need to generate this within IF
27108: -- To allow MPA report to determine if it should generate report process
27109: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27110: ------------------------------------------------------------------------------------------
27111:
27112: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27113: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27114: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27115: -- call ADRs
27116: -- Bug 4922099
27109: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27110: ------------------------------------------------------------------------------------------
27111:
27112: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27113: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27114: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27115: -- call ADRs
27116: -- Bug 4922099
27117: --
27133: , x_value_type_code => l_adr_value_type_code
27134: , p_side => 'NA'
27135: );
27136:
27137: xla_ae_lines_pkg.set_ccid(
27138: p_code_combination_id => l_ccid
27139: , p_value_type_code => l_adr_value_type_code
27140: , p_transaction_coa_id => l_adr_transaction_coa_id
27141: , p_accounting_coa_id => l_adr_accounting_coa_id
27166: );
27167:
27168: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
27169:
27170: xla_ae_lines_pkg.set_segment(
27171: p_to_segment_code => 'GL_BALANCING'
27172: , p_segment_value => l_segment
27173: , p_from_segment_code => l_adr_value_segment_code
27174: , p_from_combination_id => l_adr_value_combination_id
27197:
27198: --
27199: -- Update the line information that should be overwritten
27200: --
27201: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27202: p_header_num => 1);
27203: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27204:
27205: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27199: -- Update the line information that should be overwritten
27200: --
27201: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27202: p_header_num => 1);
27203: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27204:
27205: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27206:
27207: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27201: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27202: p_header_num => 1);
27203: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27204:
27205: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27206:
27207: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27208: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27209: END IF;
27204:
27205: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27206:
27207: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27208: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27209: END IF;
27210:
27211: --
27212: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27211: --
27212: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27213: --
27214: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
27215: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
27216: ELSE
27217: ---------------------------------------------------------------------------------------------------
27218: -- 4262811a Switch Sign
27219: ---------------------------------------------------------------------------------------------------
27216: ELSE
27217: ---------------------------------------------------------------------------------------------------
27218: -- 4262811a Switch Sign
27219: ---------------------------------------------------------------------------------------------------
27220: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27221: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27222: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27223: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27224: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27217: ---------------------------------------------------------------------------------------------------
27218: -- 4262811a Switch Sign
27219: ---------------------------------------------------------------------------------------------------
27220: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27221: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27222: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27223: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27224: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27225: -- 5132302
27218: -- 4262811a Switch Sign
27219: ---------------------------------------------------------------------------------------------------
27220: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27221: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27222: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27223: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27224: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27225: -- 5132302
27226: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27219: ---------------------------------------------------------------------------------------------------
27220: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27221: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27222: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27223: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27224: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27225: -- 5132302
27226: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27227: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27220: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27221: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27222: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27223: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27224: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27225: -- 5132302
27226: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27227: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27228:
27222: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27223: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27224: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27225: -- 5132302
27226: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27227: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27228:
27229: END IF;
27230:
27223: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27224: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27225: -- 5132302
27226: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27227: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27228:
27229: END IF;
27230:
27231: -- 4955764
27228:
27229: END IF;
27230:
27231: -- 4955764
27232: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27233: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27234:
27235:
27236: XLA_AE_LINES_PKG.ValidateCurrentLine;
27232: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27233: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27234:
27235:
27236: XLA_AE_LINES_PKG.ValidateCurrentLine;
27237: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27238:
27239: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27240: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27233: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27234:
27235:
27236: XLA_AE_LINES_PKG.ValidateCurrentLine;
27237: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27238:
27239: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27240: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27241: ,p_balance_type_code => l_balance_type_code);
27370: --
27371: -- bulk performance
27372: --
27373: l_balance_type_code VARCHAR2(1);
27374: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
27375: l_log_module VARCHAR2(240);
27376:
27377: --
27378: -- Upgrade strategy
27440: ') = 'Y'
27441: THEN
27442:
27443: --
27444: XLA_AE_LINES_PKG.SetNewLine;
27445:
27446: p_balance_type_code := l_balance_type_code;
27447: -- set the flag so later we will know whether the gain loss line needs to be created
27448:
27452:
27453: --
27454: -- bulk performance
27455: --
27456: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
27457: p_header_num => 0); -- 4262811
27458: --
27459: -- set accounting line options
27460: --
27457: p_header_num => 0); -- 4262811
27458: --
27459: -- set accounting line options
27460: --
27461: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
27462: p_natural_side_code => 'C'
27463: , p_gain_or_loss_flag => 'N'
27464: , p_gl_transfer_mode_code => 'S'
27465: , p_acct_entry_type_code => 'A'
27471: --
27472: --
27473: -- set accounting line type info
27474: --
27475: xla_ae_lines_pkg.SetAcctLineType
27476: (p_component_type => l_component_type
27477: ,p_event_type_code => l_event_type_code
27478: ,p_line_definition_owner_code => l_line_definition_owner_code
27479: ,p_line_definition_code => l_line_definition_code
27485: ,p_event_class_code => l_event_class_code);
27486: --
27487: -- set accounting class
27488: --
27489: xla_ae_lines_pkg.SetAcctClass(
27490: p_accounting_class_code => 'REMITTANCE'
27491: , p_ae_header_id => l_ae_header_id
27492: );
27493:
27493:
27494: --
27495: -- set rounding class
27496: --
27497: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27498: 'RECEIVABLE';
27499:
27500: --
27501: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27497: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27498: 'RECEIVABLE';
27499:
27500: --
27501: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27502: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27503: --
27504: -- bulk performance
27505: --
27498: 'RECEIVABLE';
27499:
27500: --
27501: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27502: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27503: --
27504: -- bulk performance
27505: --
27506: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27502: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27503: --
27504: -- bulk performance
27505: --
27506: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27507:
27508: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27509: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27510:
27504: -- bulk performance
27505: --
27506: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27507:
27508: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27509: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27510:
27511: -- 4955764
27512: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27508: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27509: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27510:
27511: -- 4955764
27512: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27513: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
27514:
27515: -- 4458381 Public Sector Enh
27516:
27536: l_rec_acct_attrs.array_char_value(7) := p_source_21;
27537: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
27538: l_rec_acct_attrs.array_num_value(8) := p_source_22;
27539:
27540: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27541: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27542:
27543: ---------------------------------------------------------------------------------------------------------------
27544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27537: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
27538: l_rec_acct_attrs.array_num_value(8) := p_source_22;
27539:
27540: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27541: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27542:
27543: ---------------------------------------------------------------------------------------------------------------
27544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27545: ---------------------------------------------------------------------------------------------------------------
27540: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27541: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27542:
27543: ---------------------------------------------------------------------------------------------------------------
27544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27545: ---------------------------------------------------------------------------------------------------------------
27546: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27547:
27548: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27542:
27543: ---------------------------------------------------------------------------------------------------------------
27544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27545: ---------------------------------------------------------------------------------------------------------------
27546: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27547:
27548: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27549: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27550:
27544: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27545: ---------------------------------------------------------------------------------------------------------------
27546: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27547:
27548: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27549: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27550:
27551: IF xla_accounting_cache_pkg.GetValueChar
27552: (p_source_code => 'LEDGER_CATEGORY_CODE'
27545: ---------------------------------------------------------------------------------------------------------------
27546: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27547:
27548: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27549: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27550:
27551: IF xla_accounting_cache_pkg.GetValueChar
27552: (p_source_code => 'LEDGER_CATEGORY_CODE'
27553: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
27556: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
27557: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
27558: )
27559: THEN
27560: xla_ae_lines_pkg.BflowUpgEntry
27561: (p_business_method_code => l_bflow_method_code
27562: ,p_business_class_code => l_bflow_class_code
27563: ,p_balance_type => l_balance_type_code);
27564: ELSE
27573: --
27574: -- call description
27575: --
27576:
27577: xla_ae_lines_pkg.SetLineDescription(
27578: p_ae_header_id => l_ae_header_id
27579: ,p_description => Description_1 (
27580: p_application_id => p_application_id
27581: , p_ae_header_id => l_ae_header_id
27605: , x_value_type_code => l_adr_value_type_code
27606: , p_side => 'NA'
27607: );
27608:
27609: xla_ae_lines_pkg.set_ccid(
27610: p_code_combination_id => l_ccid
27611: , p_value_type_code => l_adr_value_type_code
27612: , p_transaction_coa_id => l_adr_transaction_coa_id
27613: , p_accounting_coa_id => l_adr_accounting_coa_id
27638: );
27639:
27640: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
27641:
27642: xla_ae_lines_pkg.set_segment(
27643: p_to_segment_code => 'GL_BALANCING'
27644: , p_segment_value => l_segment
27645: , p_from_segment_code => l_adr_value_segment_code
27646: , p_from_combination_id => l_adr_value_combination_id
27682: xla_accounting_err_pkg.build_message
27683: (p_appli_s_name => 'XLA'
27684: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
27685: ,p_token_1 => 'LINE_NUMBER'
27686: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
27687: ,p_token_2 => 'LINE_TYPE_NAME'
27688: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
27689: l_component_type
27690: ,l_component_code
27718: --
27719: --
27720: ------------------------------------------------------------------------------------------------
27721: -- 4219869 Business Flow
27722: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27723: -- Prior Entry. Currently, the following code is always generated.
27724: ------------------------------------------------------------------------------------------------
27725: XLA_AE_LINES_PKG.ValidateCurrentLine;
27726:
27721: -- 4219869 Business Flow
27722: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27723: -- Prior Entry. Currently, the following code is always generated.
27724: ------------------------------------------------------------------------------------------------
27725: XLA_AE_LINES_PKG.ValidateCurrentLine;
27726:
27727: ------------------------------------------------------------------------------------
27728: -- 4219869 Business Flow
27729: -- Populated credit and debit amounts -- Need to generate this within IF
27727: ------------------------------------------------------------------------------------
27728: -- 4219869 Business Flow
27729: -- Populated credit and debit amounts -- Need to generate this within IF
27730: ------------------------------------------------------------------------------------
27731: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27732:
27733: ----------------------------------------------------------------------------------
27734: -- 4219869 Business Flow
27735: -- Update journal entry status -- Need to generate this within IF
27759: -- To allow MPA report to determine if it should generate report process
27760: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27761: ------------------------------------------------------------------------------------------
27762:
27763: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27764: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27765: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27766: -- call ADRs
27767: -- Bug 4922099
27760: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27761: ------------------------------------------------------------------------------------------
27762:
27763: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27764: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27765: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27766: -- call ADRs
27767: -- Bug 4922099
27768: --
27784: , x_value_type_code => l_adr_value_type_code
27785: , p_side => 'NA'
27786: );
27787:
27788: xla_ae_lines_pkg.set_ccid(
27789: p_code_combination_id => l_ccid
27790: , p_value_type_code => l_adr_value_type_code
27791: , p_transaction_coa_id => l_adr_transaction_coa_id
27792: , p_accounting_coa_id => l_adr_accounting_coa_id
27817: );
27818:
27819: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
27820:
27821: xla_ae_lines_pkg.set_segment(
27822: p_to_segment_code => 'GL_BALANCING'
27823: , p_segment_value => l_segment
27824: , p_from_segment_code => l_adr_value_segment_code
27825: , p_from_combination_id => l_adr_value_combination_id
27848:
27849: --
27850: -- Update the line information that should be overwritten
27851: --
27852: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27853: p_header_num => 1);
27854: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27855:
27856: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27850: -- Update the line information that should be overwritten
27851: --
27852: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27853: p_header_num => 1);
27854: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27855:
27856: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27857:
27858: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27852: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27853: p_header_num => 1);
27854: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27855:
27856: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27857:
27858: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27859: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27860: END IF;
27855:
27856: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27857:
27858: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27859: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27860: END IF;
27861:
27862: --
27863: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27862: --
27863: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27864: --
27865: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
27866: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
27867: ELSE
27868: ---------------------------------------------------------------------------------------------------
27869: -- 4262811a Switch Sign
27870: ---------------------------------------------------------------------------------------------------
27867: ELSE
27868: ---------------------------------------------------------------------------------------------------
27869: -- 4262811a Switch Sign
27870: ---------------------------------------------------------------------------------------------------
27871: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27873: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27875: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27868: ---------------------------------------------------------------------------------------------------
27869: -- 4262811a Switch Sign
27870: ---------------------------------------------------------------------------------------------------
27871: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27873: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27875: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27876: -- 5132302
27869: -- 4262811a Switch Sign
27870: ---------------------------------------------------------------------------------------------------
27871: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27873: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27875: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27876: -- 5132302
27877: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27870: ---------------------------------------------------------------------------------------------------
27871: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27873: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27875: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27876: -- 5132302
27877: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27878: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27871: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27872: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27873: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27875: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27876: -- 5132302
27877: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27878: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27879:
27873: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27875: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27876: -- 5132302
27877: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27878: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27879:
27880: END IF;
27881:
27874: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27875: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27876: -- 5132302
27877: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27878: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27879:
27880: END IF;
27881:
27882: -- 4955764
27879:
27880: END IF;
27881:
27882: -- 4955764
27883: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27884: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27885:
27886:
27887: XLA_AE_LINES_PKG.ValidateCurrentLine;
27883: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27884: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27885:
27886:
27887: XLA_AE_LINES_PKG.ValidateCurrentLine;
27888: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27889:
27890: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27891: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27884: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27885:
27886:
27887: XLA_AE_LINES_PKG.ValidateCurrentLine;
27888: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27889:
27890: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27891: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27892: ,p_balance_type_code => l_balance_type_code);
28037: --
28038: -- bulk performance
28039: --
28040: l_balance_type_code VARCHAR2(1);
28041: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
28042: l_log_module VARCHAR2(240);
28043:
28044: --
28045: -- Upgrade strategy
28107: ') = 'N'
28108: THEN
28109:
28110: --
28111: XLA_AE_LINES_PKG.SetNewLine;
28112:
28113: p_balance_type_code := l_balance_type_code;
28114: -- set the flag so later we will know whether the gain loss line needs to be created
28115:
28119:
28120: --
28121: -- bulk performance
28122: --
28123: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
28124: p_header_num => 0); -- 4262811
28125: --
28126: -- set accounting line options
28127: --
28124: p_header_num => 0); -- 4262811
28125: --
28126: -- set accounting line options
28127: --
28128: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
28129: p_natural_side_code => 'D'
28130: , p_gain_or_loss_flag => 'N'
28131: , p_gl_transfer_mode_code => 'S'
28132: , p_acct_entry_type_code => 'A'
28138: --
28139: --
28140: -- set accounting line type info
28141: --
28142: xla_ae_lines_pkg.SetAcctLineType
28143: (p_component_type => l_component_type
28144: ,p_event_type_code => l_event_type_code
28145: ,p_line_definition_owner_code => l_line_definition_owner_code
28146: ,p_line_definition_code => l_line_definition_code
28152: ,p_event_class_code => l_event_class_code);
28153: --
28154: -- set accounting class
28155: --
28156: xla_ae_lines_pkg.SetAcctClass(
28157: p_accounting_class_code => 'CASH'
28158: , p_ae_header_id => l_ae_header_id
28159: );
28160:
28160:
28161: --
28162: -- set rounding class
28163: --
28164: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28165: 'RECEIVABLE';
28166:
28167: --
28168: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28164: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28165: 'RECEIVABLE';
28166:
28167: --
28168: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28169: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28170: --
28171: -- bulk performance
28172: --
28165: 'RECEIVABLE';
28166:
28167: --
28168: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28169: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28170: --
28171: -- bulk performance
28172: --
28173: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28169: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28170: --
28171: -- bulk performance
28172: --
28173: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28174:
28175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28176: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28177:
28171: -- bulk performance
28172: --
28173: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28174:
28175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28176: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28177:
28178: -- 4955764
28179: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28176: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28177:
28178: -- 4955764
28179: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28180: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
28181:
28182: -- 4458381 Public Sector Enh
28183:
28219: l_rec_acct_attrs.array_num_value(15) := p_source_63;
28220: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
28221: l_rec_acct_attrs.array_char_value(16) := p_source_64;
28222:
28223: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28224: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28225:
28226: ---------------------------------------------------------------------------------------------------------------
28227: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28220: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
28221: l_rec_acct_attrs.array_char_value(16) := p_source_64;
28222:
28223: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28224: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28225:
28226: ---------------------------------------------------------------------------------------------------------------
28227: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28228: ---------------------------------------------------------------------------------------------------------------
28223: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28224: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28225:
28226: ---------------------------------------------------------------------------------------------------------------
28227: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28228: ---------------------------------------------------------------------------------------------------------------
28229: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28230:
28231: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28225:
28226: ---------------------------------------------------------------------------------------------------------------
28227: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28228: ---------------------------------------------------------------------------------------------------------------
28229: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28230:
28231: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28232: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28233:
28227: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28228: ---------------------------------------------------------------------------------------------------------------
28229: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28230:
28231: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28232: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28233:
28234: IF xla_accounting_cache_pkg.GetValueChar
28235: (p_source_code => 'LEDGER_CATEGORY_CODE'
28228: ---------------------------------------------------------------------------------------------------------------
28229: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28230:
28231: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28232: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28233:
28234: IF xla_accounting_cache_pkg.GetValueChar
28235: (p_source_code => 'LEDGER_CATEGORY_CODE'
28236: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
28239: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
28240: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
28241: )
28242: THEN
28243: xla_ae_lines_pkg.BflowUpgEntry
28244: (p_business_method_code => l_bflow_method_code
28245: ,p_business_class_code => l_bflow_class_code
28246: ,p_balance_type => l_balance_type_code);
28247: ELSE
28256: --
28257: -- call description
28258: --
28259:
28260: xla_ae_lines_pkg.SetLineDescription(
28261: p_ae_header_id => l_ae_header_id
28262: ,p_description => Description_1 (
28263: p_application_id => p_application_id
28264: , p_ae_header_id => l_ae_header_id
28288: , x_value_type_code => l_adr_value_type_code
28289: , p_side => 'NA'
28290: );
28291:
28292: xla_ae_lines_pkg.set_ccid(
28293: p_code_combination_id => l_ccid
28294: , p_value_type_code => l_adr_value_type_code
28295: , p_transaction_coa_id => l_adr_transaction_coa_id
28296: , p_accounting_coa_id => l_adr_accounting_coa_id
28321: );
28322:
28323: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
28324:
28325: xla_ae_lines_pkg.set_segment(
28326: p_to_segment_code => 'GL_BALANCING'
28327: , p_segment_value => l_segment
28328: , p_from_segment_code => l_adr_value_segment_code
28329: , p_from_combination_id => l_adr_value_combination_id
28365: xla_accounting_err_pkg.build_message
28366: (p_appli_s_name => 'XLA'
28367: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
28368: ,p_token_1 => 'LINE_NUMBER'
28369: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
28370: ,p_token_2 => 'LINE_TYPE_NAME'
28371: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
28372: l_component_type
28373: ,l_component_code
28401: --
28402: --
28403: ------------------------------------------------------------------------------------------------
28404: -- 4219869 Business Flow
28405: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28406: -- Prior Entry. Currently, the following code is always generated.
28407: ------------------------------------------------------------------------------------------------
28408: XLA_AE_LINES_PKG.ValidateCurrentLine;
28409:
28404: -- 4219869 Business Flow
28405: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28406: -- Prior Entry. Currently, the following code is always generated.
28407: ------------------------------------------------------------------------------------------------
28408: XLA_AE_LINES_PKG.ValidateCurrentLine;
28409:
28410: ------------------------------------------------------------------------------------
28411: -- 4219869 Business Flow
28412: -- Populated credit and debit amounts -- Need to generate this within IF
28410: ------------------------------------------------------------------------------------
28411: -- 4219869 Business Flow
28412: -- Populated credit and debit amounts -- Need to generate this within IF
28413: ------------------------------------------------------------------------------------
28414: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28415:
28416: ----------------------------------------------------------------------------------
28417: -- 4219869 Business Flow
28418: -- Update journal entry status -- Need to generate this within IF
28442: -- To allow MPA report to determine if it should generate report process
28443: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28444: ------------------------------------------------------------------------------------------
28445:
28446: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28447: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28448: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28449: -- call ADRs
28450: -- Bug 4922099
28443: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28444: ------------------------------------------------------------------------------------------
28445:
28446: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28447: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28448: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28449: -- call ADRs
28450: -- Bug 4922099
28451: --
28467: , x_value_type_code => l_adr_value_type_code
28468: , p_side => 'NA'
28469: );
28470:
28471: xla_ae_lines_pkg.set_ccid(
28472: p_code_combination_id => l_ccid
28473: , p_value_type_code => l_adr_value_type_code
28474: , p_transaction_coa_id => l_adr_transaction_coa_id
28475: , p_accounting_coa_id => l_adr_accounting_coa_id
28500: );
28501:
28502: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
28503:
28504: xla_ae_lines_pkg.set_segment(
28505: p_to_segment_code => 'GL_BALANCING'
28506: , p_segment_value => l_segment
28507: , p_from_segment_code => l_adr_value_segment_code
28508: , p_from_combination_id => l_adr_value_combination_id
28531:
28532: --
28533: -- Update the line information that should be overwritten
28534: --
28535: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28536: p_header_num => 1);
28537: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28538:
28539: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28533: -- Update the line information that should be overwritten
28534: --
28535: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28536: p_header_num => 1);
28537: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28538:
28539: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28540:
28541: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28535: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28536: p_header_num => 1);
28537: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28538:
28539: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28540:
28541: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28542: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28543: END IF;
28538:
28539: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28540:
28541: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28542: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28543: END IF;
28544:
28545: --
28546: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28545: --
28546: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28547: --
28548: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
28549: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
28550: ELSE
28551: ---------------------------------------------------------------------------------------------------
28552: -- 4262811a Switch Sign
28553: ---------------------------------------------------------------------------------------------------
28550: ELSE
28551: ---------------------------------------------------------------------------------------------------
28552: -- 4262811a Switch Sign
28553: ---------------------------------------------------------------------------------------------------
28554: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28555: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28556: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28557: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28558: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28551: ---------------------------------------------------------------------------------------------------
28552: -- 4262811a Switch Sign
28553: ---------------------------------------------------------------------------------------------------
28554: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28555: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28556: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28557: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28558: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28559: -- 5132302
28552: -- 4262811a Switch Sign
28553: ---------------------------------------------------------------------------------------------------
28554: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28555: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28556: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28557: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28558: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28559: -- 5132302
28560: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28553: ---------------------------------------------------------------------------------------------------
28554: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28555: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28556: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28557: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28558: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28559: -- 5132302
28560: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28561: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28554: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28555: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28556: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28557: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28558: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28559: -- 5132302
28560: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28561: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28562:
28556: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28557: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28558: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28559: -- 5132302
28560: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28561: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28562:
28563: END IF;
28564:
28557: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28558: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28559: -- 5132302
28560: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28561: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28562:
28563: END IF;
28564:
28565: -- 4955764
28562:
28563: END IF;
28564:
28565: -- 4955764
28566: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28567: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28568:
28569:
28570: XLA_AE_LINES_PKG.ValidateCurrentLine;
28566: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28567: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28568:
28569:
28570: XLA_AE_LINES_PKG.ValidateCurrentLine;
28571: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28572:
28573: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28574: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28567: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28568:
28569:
28570: XLA_AE_LINES_PKG.ValidateCurrentLine;
28571: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28572:
28573: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28574: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28575: ,p_balance_type_code => l_balance_type_code);
28724: --
28725: -- bulk performance
28726: --
28727: l_balance_type_code VARCHAR2(1);
28728: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
28729: l_log_module VARCHAR2(240);
28730:
28731: --
28732: -- Upgrade strategy
28808: ') = 'N'
28809: THEN
28810:
28811: --
28812: XLA_AE_LINES_PKG.SetNewLine;
28813:
28814: p_balance_type_code := l_balance_type_code;
28815: -- set the flag so later we will know whether the gain loss line needs to be created
28816:
28820:
28821: --
28822: -- bulk performance
28823: --
28824: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
28825: p_header_num => 0); -- 4262811
28826: --
28827: -- set accounting line options
28828: --
28825: p_header_num => 0); -- 4262811
28826: --
28827: -- set accounting line options
28828: --
28829: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
28830: p_natural_side_code => 'C'
28831: , p_gain_or_loss_flag => 'N'
28832: , p_gl_transfer_mode_code => 'S'
28833: , p_acct_entry_type_code => 'A'
28839: --
28840: --
28841: -- set accounting line type info
28842: --
28843: xla_ae_lines_pkg.SetAcctLineType
28844: (p_component_type => l_component_type
28845: ,p_event_type_code => l_event_type_code
28846: ,p_line_definition_owner_code => l_line_definition_owner_code
28847: ,p_line_definition_code => l_line_definition_code
28853: ,p_event_class_code => l_event_class_code);
28854: --
28855: -- set accounting class
28856: --
28857: xla_ae_lines_pkg.SetAcctClass(
28858: p_accounting_class_code => 'CASH'
28859: , p_ae_header_id => l_ae_header_id
28860: );
28861:
28861:
28862: --
28863: -- set rounding class
28864: --
28865: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28866: 'RECEIVABLE';
28867:
28868: --
28869: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28865: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28866: 'RECEIVABLE';
28867:
28868: --
28869: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28870: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28871: --
28872: -- bulk performance
28873: --
28866: 'RECEIVABLE';
28867:
28868: --
28869: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28870: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28871: --
28872: -- bulk performance
28873: --
28874: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28870: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28871: --
28872: -- bulk performance
28873: --
28874: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28875:
28876: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28877: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28878:
28872: -- bulk performance
28873: --
28874: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28875:
28876: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28877: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28878:
28879: -- 4955764
28880: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28876: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28877: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28878:
28879: -- 4955764
28880: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28881: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
28882:
28883: -- 4458381 Public Sector Enh
28884:
28920: l_rec_acct_attrs.array_num_value(15) := p_source_63;
28921: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
28922: l_rec_acct_attrs.array_char_value(16) := p_source_64;
28923:
28924: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28925: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28926:
28927: ---------------------------------------------------------------------------------------------------------------
28928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28921: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
28922: l_rec_acct_attrs.array_char_value(16) := p_source_64;
28923:
28924: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28925: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28926:
28927: ---------------------------------------------------------------------------------------------------------------
28928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28929: ---------------------------------------------------------------------------------------------------------------
28924: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28925: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28926:
28927: ---------------------------------------------------------------------------------------------------------------
28928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28929: ---------------------------------------------------------------------------------------------------------------
28930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28931:
28932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28926:
28927: ---------------------------------------------------------------------------------------------------------------
28928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28929: ---------------------------------------------------------------------------------------------------------------
28930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28931:
28932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28933: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28934:
28928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28929: ---------------------------------------------------------------------------------------------------------------
28930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28931:
28932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28933: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28934:
28935: IF xla_accounting_cache_pkg.GetValueChar
28936: (p_source_code => 'LEDGER_CATEGORY_CODE'
28929: ---------------------------------------------------------------------------------------------------------------
28930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28931:
28932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28933: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28934:
28935: IF xla_accounting_cache_pkg.GetValueChar
28936: (p_source_code => 'LEDGER_CATEGORY_CODE'
28937: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
28940: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
28941: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
28942: )
28943: THEN
28944: xla_ae_lines_pkg.BflowUpgEntry
28945: (p_business_method_code => l_bflow_method_code
28946: ,p_business_class_code => l_bflow_class_code
28947: ,p_balance_type => l_balance_type_code);
28948: ELSE
28957: --
28958: -- call description
28959: --
28960:
28961: xla_ae_lines_pkg.SetLineDescription(
28962: p_ae_header_id => l_ae_header_id
28963: ,p_description => Description_1 (
28964: p_application_id => p_application_id
28965: , p_ae_header_id => l_ae_header_id
28989: , x_value_type_code => l_adr_value_type_code
28990: , p_side => 'NA'
28991: );
28992:
28993: xla_ae_lines_pkg.set_ccid(
28994: p_code_combination_id => l_ccid
28995: , p_value_type_code => l_adr_value_type_code
28996: , p_transaction_coa_id => l_adr_transaction_coa_id
28997: , p_accounting_coa_id => l_adr_accounting_coa_id
29025: xla_accounting_err_pkg.build_message
29026: (p_appli_s_name => 'XLA'
29027: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
29028: ,p_token_1 => 'LINE_NUMBER'
29029: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
29030: ,p_token_2 => 'LINE_TYPE_NAME'
29031: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
29032: l_component_type
29033: ,l_component_code
29061: --
29062: --
29063: ------------------------------------------------------------------------------------------------
29064: -- 4219869 Business Flow
29065: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29066: -- Prior Entry. Currently, the following code is always generated.
29067: ------------------------------------------------------------------------------------------------
29068: XLA_AE_LINES_PKG.ValidateCurrentLine;
29069:
29064: -- 4219869 Business Flow
29065: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29066: -- Prior Entry. Currently, the following code is always generated.
29067: ------------------------------------------------------------------------------------------------
29068: XLA_AE_LINES_PKG.ValidateCurrentLine;
29069:
29070: ------------------------------------------------------------------------------------
29071: -- 4219869 Business Flow
29072: -- Populated credit and debit amounts -- Need to generate this within IF
29070: ------------------------------------------------------------------------------------
29071: -- 4219869 Business Flow
29072: -- Populated credit and debit amounts -- Need to generate this within IF
29073: ------------------------------------------------------------------------------------
29074: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29075:
29076: ----------------------------------------------------------------------------------
29077: -- 4219869 Business Flow
29078: -- Update journal entry status -- Need to generate this within IF
29102: -- To allow MPA report to determine if it should generate report process
29103: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29104: ------------------------------------------------------------------------------------------
29105:
29106: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29107: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29108: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29109: -- call ADRs
29110: -- Bug 4922099
29103: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29104: ------------------------------------------------------------------------------------------
29105:
29106: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29107: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29108: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29109: -- call ADRs
29110: -- Bug 4922099
29111: --
29127: , x_value_type_code => l_adr_value_type_code
29128: , p_side => 'NA'
29129: );
29130:
29131: xla_ae_lines_pkg.set_ccid(
29132: p_code_combination_id => l_ccid
29133: , p_value_type_code => l_adr_value_type_code
29134: , p_transaction_coa_id => l_adr_transaction_coa_id
29135: , p_accounting_coa_id => l_adr_accounting_coa_id
29150:
29151: --
29152: -- Update the line information that should be overwritten
29153: --
29154: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29155: p_header_num => 1);
29156: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29157:
29158: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29152: -- Update the line information that should be overwritten
29153: --
29154: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29155: p_header_num => 1);
29156: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29157:
29158: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29159:
29160: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29154: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29155: p_header_num => 1);
29156: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29157:
29158: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29159:
29160: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29161: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29162: END IF;
29157:
29158: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29159:
29160: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29161: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29162: END IF;
29163:
29164: --
29165: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29164: --
29165: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29166: --
29167: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
29168: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
29169: ELSE
29170: ---------------------------------------------------------------------------------------------------
29171: -- 4262811a Switch Sign
29172: ---------------------------------------------------------------------------------------------------
29169: ELSE
29170: ---------------------------------------------------------------------------------------------------
29171: -- 4262811a Switch Sign
29172: ---------------------------------------------------------------------------------------------------
29173: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29170: ---------------------------------------------------------------------------------------------------
29171: -- 4262811a Switch Sign
29172: ---------------------------------------------------------------------------------------------------
29173: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29178: -- 5132302
29171: -- 4262811a Switch Sign
29172: ---------------------------------------------------------------------------------------------------
29173: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29178: -- 5132302
29179: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29172: ---------------------------------------------------------------------------------------------------
29173: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29178: -- 5132302
29179: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29180: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29173: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29178: -- 5132302
29179: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29180: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29181:
29175: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29178: -- 5132302
29179: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29180: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29181:
29182: END IF;
29183:
29176: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29177: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29178: -- 5132302
29179: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29180: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29181:
29182: END IF;
29183:
29184: -- 4955764
29181:
29182: END IF;
29183:
29184: -- 4955764
29185: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29186: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29187:
29188:
29189: XLA_AE_LINES_PKG.ValidateCurrentLine;
29185: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29186: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29187:
29188:
29189: XLA_AE_LINES_PKG.ValidateCurrentLine;
29190: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29191:
29192: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29193: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29186: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29187:
29188:
29189: XLA_AE_LINES_PKG.ValidateCurrentLine;
29190: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29191:
29192: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29193: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29194: ,p_balance_type_code => l_balance_type_code);
29339: --
29340: -- bulk performance
29341: --
29342: l_balance_type_code VARCHAR2(1);
29343: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
29344: l_log_module VARCHAR2(240);
29345:
29346: --
29347: -- Upgrade strategy
29411: ') = 'Y'
29412: THEN
29413:
29414: --
29415: XLA_AE_LINES_PKG.SetNewLine;
29416:
29417: p_balance_type_code := l_balance_type_code;
29418: -- set the flag so later we will know whether the gain loss line needs to be created
29419:
29423:
29424: --
29425: -- bulk performance
29426: --
29427: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
29428: p_header_num => 0); -- 4262811
29429: --
29430: -- set accounting line options
29431: --
29428: p_header_num => 0); -- 4262811
29429: --
29430: -- set accounting line options
29431: --
29432: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
29433: p_natural_side_code => 'D'
29434: , p_gain_or_loss_flag => 'N'
29435: , p_gl_transfer_mode_code => 'S'
29436: , p_acct_entry_type_code => 'A'
29442: --
29443: --
29444: -- set accounting line type info
29445: --
29446: xla_ae_lines_pkg.SetAcctLineType
29447: (p_component_type => l_component_type
29448: ,p_event_type_code => l_event_type_code
29449: ,p_line_definition_owner_code => l_line_definition_owner_code
29450: ,p_line_definition_code => l_line_definition_code
29456: ,p_event_class_code => l_event_class_code);
29457: --
29458: -- set accounting class
29459: --
29460: xla_ae_lines_pkg.SetAcctClass(
29461: p_accounting_class_code => 'CASH'
29462: , p_ae_header_id => l_ae_header_id
29463: );
29464:
29464:
29465: --
29466: -- set rounding class
29467: --
29468: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29469: 'RECEIVABLE';
29470:
29471: --
29472: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29468: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29469: 'RECEIVABLE';
29470:
29471: --
29472: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29473: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29474: --
29475: -- bulk performance
29476: --
29469: 'RECEIVABLE';
29470:
29471: --
29472: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29473: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29474: --
29475: -- bulk performance
29476: --
29477: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29473: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29474: --
29475: -- bulk performance
29476: --
29477: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29478:
29479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29480: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29481:
29475: -- bulk performance
29476: --
29477: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29478:
29479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29480: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29481:
29482: -- 4955764
29483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29480: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29481:
29482: -- 4955764
29483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
29485:
29486: -- 4458381 Public Sector Enh
29487:
29523: l_rec_acct_attrs.array_num_value(15) := p_source_63;
29524: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
29525: l_rec_acct_attrs.array_char_value(16) := p_source_64;
29526:
29527: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29528: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29529:
29530: ---------------------------------------------------------------------------------------------------------------
29531: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29524: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
29525: l_rec_acct_attrs.array_char_value(16) := p_source_64;
29526:
29527: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29528: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29529:
29530: ---------------------------------------------------------------------------------------------------------------
29531: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29532: ---------------------------------------------------------------------------------------------------------------
29527: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29528: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29529:
29530: ---------------------------------------------------------------------------------------------------------------
29531: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29532: ---------------------------------------------------------------------------------------------------------------
29533: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29534:
29535: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29529:
29530: ---------------------------------------------------------------------------------------------------------------
29531: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29532: ---------------------------------------------------------------------------------------------------------------
29533: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29534:
29535: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29536: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29537:
29531: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29532: ---------------------------------------------------------------------------------------------------------------
29533: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29534:
29535: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29536: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29537:
29538: IF xla_accounting_cache_pkg.GetValueChar
29539: (p_source_code => 'LEDGER_CATEGORY_CODE'
29532: ---------------------------------------------------------------------------------------------------------------
29533: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29534:
29535: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29536: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29537:
29538: IF xla_accounting_cache_pkg.GetValueChar
29539: (p_source_code => 'LEDGER_CATEGORY_CODE'
29540: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
29543: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
29544: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
29545: )
29546: THEN
29547: xla_ae_lines_pkg.BflowUpgEntry
29548: (p_business_method_code => l_bflow_method_code
29549: ,p_business_class_code => l_bflow_class_code
29550: ,p_balance_type => l_balance_type_code);
29551: ELSE
29560: --
29561: -- call description
29562: --
29563:
29564: xla_ae_lines_pkg.SetLineDescription(
29565: p_ae_header_id => l_ae_header_id
29566: ,p_description => Description_1 (
29567: p_application_id => p_application_id
29568: , p_ae_header_id => l_ae_header_id
29592: , x_value_type_code => l_adr_value_type_code
29593: , p_side => 'NA'
29594: );
29595:
29596: xla_ae_lines_pkg.set_ccid(
29597: p_code_combination_id => l_ccid
29598: , p_value_type_code => l_adr_value_type_code
29599: , p_transaction_coa_id => l_adr_transaction_coa_id
29600: , p_accounting_coa_id => l_adr_accounting_coa_id
29628: xla_accounting_err_pkg.build_message
29629: (p_appli_s_name => 'XLA'
29630: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
29631: ,p_token_1 => 'LINE_NUMBER'
29632: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
29633: ,p_token_2 => 'LINE_TYPE_NAME'
29634: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
29635: l_component_type
29636: ,l_component_code
29664: --
29665: --
29666: ------------------------------------------------------------------------------------------------
29667: -- 4219869 Business Flow
29668: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29669: -- Prior Entry. Currently, the following code is always generated.
29670: ------------------------------------------------------------------------------------------------
29671: XLA_AE_LINES_PKG.ValidateCurrentLine;
29672:
29667: -- 4219869 Business Flow
29668: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29669: -- Prior Entry. Currently, the following code is always generated.
29670: ------------------------------------------------------------------------------------------------
29671: XLA_AE_LINES_PKG.ValidateCurrentLine;
29672:
29673: ------------------------------------------------------------------------------------
29674: -- 4219869 Business Flow
29675: -- Populated credit and debit amounts -- Need to generate this within IF
29673: ------------------------------------------------------------------------------------
29674: -- 4219869 Business Flow
29675: -- Populated credit and debit amounts -- Need to generate this within IF
29676: ------------------------------------------------------------------------------------
29677: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29678:
29679: ----------------------------------------------------------------------------------
29680: -- 4219869 Business Flow
29681: -- Update journal entry status -- Need to generate this within IF
29705: -- To allow MPA report to determine if it should generate report process
29706: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29707: ------------------------------------------------------------------------------------------
29708:
29709: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29710: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29711: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29712: -- call ADRs
29713: -- Bug 4922099
29706: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29707: ------------------------------------------------------------------------------------------
29708:
29709: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29710: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29711: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29712: -- call ADRs
29713: -- Bug 4922099
29714: --
29730: , x_value_type_code => l_adr_value_type_code
29731: , p_side => 'NA'
29732: );
29733:
29734: xla_ae_lines_pkg.set_ccid(
29735: p_code_combination_id => l_ccid
29736: , p_value_type_code => l_adr_value_type_code
29737: , p_transaction_coa_id => l_adr_transaction_coa_id
29738: , p_accounting_coa_id => l_adr_accounting_coa_id
29753:
29754: --
29755: -- Update the line information that should be overwritten
29756: --
29757: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29758: p_header_num => 1);
29759: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29760:
29761: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29755: -- Update the line information that should be overwritten
29756: --
29757: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29758: p_header_num => 1);
29759: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29760:
29761: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29762:
29763: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29757: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29758: p_header_num => 1);
29759: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29760:
29761: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29762:
29763: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29764: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29765: END IF;
29760:
29761: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29762:
29763: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29764: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29765: END IF;
29766:
29767: --
29768: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29767: --
29768: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29769: --
29770: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
29771: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
29772: ELSE
29773: ---------------------------------------------------------------------------------------------------
29774: -- 4262811a Switch Sign
29775: ---------------------------------------------------------------------------------------------------
29772: ELSE
29773: ---------------------------------------------------------------------------------------------------
29774: -- 4262811a Switch Sign
29775: ---------------------------------------------------------------------------------------------------
29776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29773: ---------------------------------------------------------------------------------------------------
29774: -- 4262811a Switch Sign
29775: ---------------------------------------------------------------------------------------------------
29776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29781: -- 5132302
29774: -- 4262811a Switch Sign
29775: ---------------------------------------------------------------------------------------------------
29776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29781: -- 5132302
29782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29775: ---------------------------------------------------------------------------------------------------
29776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29781: -- 5132302
29782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29783: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29781: -- 5132302
29782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29783: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29784:
29778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29781: -- 5132302
29782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29783: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29784:
29785: END IF;
29786:
29779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29781: -- 5132302
29782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29783: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29784:
29785: END IF;
29786:
29787: -- 4955764
29784:
29785: END IF;
29786:
29787: -- 4955764
29788: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29789: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29790:
29791:
29792: XLA_AE_LINES_PKG.ValidateCurrentLine;
29788: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29789: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29790:
29791:
29792: XLA_AE_LINES_PKG.ValidateCurrentLine;
29793: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29794:
29795: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29796: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29789: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29790:
29791:
29792: XLA_AE_LINES_PKG.ValidateCurrentLine;
29793: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29794:
29795: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29796: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29797: ,p_balance_type_code => l_balance_type_code);
29940: --
29941: -- bulk performance
29942: --
29943: l_balance_type_code VARCHAR2(1);
29944: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
29945: l_log_module VARCHAR2(240);
29946:
29947: --
29948: -- Upgrade strategy
30010: ') = 'Y'
30011: THEN
30012:
30013: --
30014: XLA_AE_LINES_PKG.SetNewLine;
30015:
30016: p_balance_type_code := l_balance_type_code;
30017: -- set the flag so later we will know whether the gain loss line needs to be created
30018:
30022:
30023: --
30024: -- bulk performance
30025: --
30026: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
30027: p_header_num => 0); -- 4262811
30028: --
30029: -- set accounting line options
30030: --
30027: p_header_num => 0); -- 4262811
30028: --
30029: -- set accounting line options
30030: --
30031: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
30032: p_natural_side_code => 'D'
30033: , p_gain_or_loss_flag => 'N'
30034: , p_gl_transfer_mode_code => 'S'
30035: , p_acct_entry_type_code => 'A'
30041: --
30042: --
30043: -- set accounting line type info
30044: --
30045: xla_ae_lines_pkg.SetAcctLineType
30046: (p_component_type => l_component_type
30047: ,p_event_type_code => l_event_type_code
30048: ,p_line_definition_owner_code => l_line_definition_owner_code
30049: ,p_line_definition_code => l_line_definition_code
30055: ,p_event_class_code => l_event_class_code);
30056: --
30057: -- set accounting class
30058: --
30059: xla_ae_lines_pkg.SetAcctClass(
30060: p_accounting_class_code => 'CONFIRMATION'
30061: , p_ae_header_id => l_ae_header_id
30062: );
30063:
30063:
30064: --
30065: -- set rounding class
30066: --
30067: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30068: 'RECEIVABLE';
30069:
30070: --
30071: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30067: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30068: 'RECEIVABLE';
30069:
30070: --
30071: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30072: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30073: --
30074: -- bulk performance
30075: --
30068: 'RECEIVABLE';
30069:
30070: --
30071: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30072: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30073: --
30074: -- bulk performance
30075: --
30076: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30072: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30073: --
30074: -- bulk performance
30075: --
30076: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30077:
30078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30079: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30080:
30074: -- bulk performance
30075: --
30076: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30077:
30078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30079: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30080:
30081: -- 4955764
30082: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30078: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30079: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30080:
30081: -- 4955764
30082: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30083: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
30084:
30085: -- 4458381 Public Sector Enh
30086:
30122: l_rec_acct_attrs.array_num_value(15) := p_source_63;
30123: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
30124: l_rec_acct_attrs.array_char_value(16) := p_source_64;
30125:
30126: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30127: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30128:
30129: ---------------------------------------------------------------------------------------------------------------
30130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30123: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
30124: l_rec_acct_attrs.array_char_value(16) := p_source_64;
30125:
30126: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30127: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30128:
30129: ---------------------------------------------------------------------------------------------------------------
30130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30131: ---------------------------------------------------------------------------------------------------------------
30126: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30127: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30128:
30129: ---------------------------------------------------------------------------------------------------------------
30130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30131: ---------------------------------------------------------------------------------------------------------------
30132: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30133:
30134: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30128:
30129: ---------------------------------------------------------------------------------------------------------------
30130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30131: ---------------------------------------------------------------------------------------------------------------
30132: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30133:
30134: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30135: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30136:
30130: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30131: ---------------------------------------------------------------------------------------------------------------
30132: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30133:
30134: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30135: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30136:
30137: IF xla_accounting_cache_pkg.GetValueChar
30138: (p_source_code => 'LEDGER_CATEGORY_CODE'
30131: ---------------------------------------------------------------------------------------------------------------
30132: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30133:
30134: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30135: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30136:
30137: IF xla_accounting_cache_pkg.GetValueChar
30138: (p_source_code => 'LEDGER_CATEGORY_CODE'
30139: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
30142: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
30143: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
30144: )
30145: THEN
30146: xla_ae_lines_pkg.BflowUpgEntry
30147: (p_business_method_code => l_bflow_method_code
30148: ,p_business_class_code => l_bflow_class_code
30149: ,p_balance_type => l_balance_type_code);
30150: ELSE
30159: --
30160: -- call description
30161: --
30162:
30163: xla_ae_lines_pkg.SetLineDescription(
30164: p_ae_header_id => l_ae_header_id
30165: ,p_description => Description_1 (
30166: p_application_id => p_application_id
30167: , p_ae_header_id => l_ae_header_id
30191: , x_value_type_code => l_adr_value_type_code
30192: , p_side => 'NA'
30193: );
30194:
30195: xla_ae_lines_pkg.set_ccid(
30196: p_code_combination_id => l_ccid
30197: , p_value_type_code => l_adr_value_type_code
30198: , p_transaction_coa_id => l_adr_transaction_coa_id
30199: , p_accounting_coa_id => l_adr_accounting_coa_id
30227: xla_accounting_err_pkg.build_message
30228: (p_appli_s_name => 'XLA'
30229: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
30230: ,p_token_1 => 'LINE_NUMBER'
30231: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
30232: ,p_token_2 => 'LINE_TYPE_NAME'
30233: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
30234: l_component_type
30235: ,l_component_code
30263: --
30264: --
30265: ------------------------------------------------------------------------------------------------
30266: -- 4219869 Business Flow
30267: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
30268: -- Prior Entry. Currently, the following code is always generated.
30269: ------------------------------------------------------------------------------------------------
30270: XLA_AE_LINES_PKG.ValidateCurrentLine;
30271:
30266: -- 4219869 Business Flow
30267: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
30268: -- Prior Entry. Currently, the following code is always generated.
30269: ------------------------------------------------------------------------------------------------
30270: XLA_AE_LINES_PKG.ValidateCurrentLine;
30271:
30272: ------------------------------------------------------------------------------------
30273: -- 4219869 Business Flow
30274: -- Populated credit and debit amounts -- Need to generate this within IF
30272: ------------------------------------------------------------------------------------
30273: -- 4219869 Business Flow
30274: -- Populated credit and debit amounts -- Need to generate this within IF
30275: ------------------------------------------------------------------------------------
30276: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30277:
30278: ----------------------------------------------------------------------------------
30279: -- 4219869 Business Flow
30280: -- Update journal entry status -- Need to generate this within IF
30304: -- To allow MPA report to determine if it should generate report process
30305: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30306: ------------------------------------------------------------------------------------------
30307:
30308: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30309: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30310: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30311: -- call ADRs
30312: -- Bug 4922099
30305: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30306: ------------------------------------------------------------------------------------------
30307:
30308: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30309: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30310: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30311: -- call ADRs
30312: -- Bug 4922099
30313: --
30329: , x_value_type_code => l_adr_value_type_code
30330: , p_side => 'NA'
30331: );
30332:
30333: xla_ae_lines_pkg.set_ccid(
30334: p_code_combination_id => l_ccid
30335: , p_value_type_code => l_adr_value_type_code
30336: , p_transaction_coa_id => l_adr_transaction_coa_id
30337: , p_accounting_coa_id => l_adr_accounting_coa_id
30352:
30353: --
30354: -- Update the line information that should be overwritten
30355: --
30356: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30357: p_header_num => 1);
30358: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30359:
30360: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30354: -- Update the line information that should be overwritten
30355: --
30356: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30357: p_header_num => 1);
30358: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30359:
30360: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30361:
30362: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30356: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30357: p_header_num => 1);
30358: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30359:
30360: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30361:
30362: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30363: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30364: END IF;
30359:
30360: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30361:
30362: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30363: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30364: END IF;
30365:
30366: --
30367: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30366: --
30367: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30368: --
30369: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
30370: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
30371: ELSE
30372: ---------------------------------------------------------------------------------------------------
30373: -- 4262811a Switch Sign
30374: ---------------------------------------------------------------------------------------------------
30371: ELSE
30372: ---------------------------------------------------------------------------------------------------
30373: -- 4262811a Switch Sign
30374: ---------------------------------------------------------------------------------------------------
30375: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30376: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30377: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30378: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30379: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30372: ---------------------------------------------------------------------------------------------------
30373: -- 4262811a Switch Sign
30374: ---------------------------------------------------------------------------------------------------
30375: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30376: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30377: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30378: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30379: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30380: -- 5132302
30373: -- 4262811a Switch Sign
30374: ---------------------------------------------------------------------------------------------------
30375: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30376: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30377: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30378: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30379: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30380: -- 5132302
30381: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30374: ---------------------------------------------------------------------------------------------------
30375: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30376: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30377: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30378: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30379: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30380: -- 5132302
30381: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30382: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30375: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30376: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30377: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30378: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30379: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30380: -- 5132302
30381: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30382: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30383:
30377: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30378: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30379: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30380: -- 5132302
30381: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30382: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30383:
30384: END IF;
30385:
30378: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30379: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30380: -- 5132302
30381: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30382: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30383:
30384: END IF;
30385:
30386: -- 4955764
30383:
30384: END IF;
30385:
30386: -- 4955764
30387: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30388: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30389:
30390:
30391: XLA_AE_LINES_PKG.ValidateCurrentLine;
30387: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30388: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30389:
30390:
30391: XLA_AE_LINES_PKG.ValidateCurrentLine;
30392: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30393:
30394: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30395: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30388: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30389:
30390:
30391: XLA_AE_LINES_PKG.ValidateCurrentLine;
30392: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30393:
30394: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30395: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30396: ,p_balance_type_code => l_balance_type_code);
30527: --
30528: -- bulk performance
30529: --
30530: l_balance_type_code VARCHAR2(1);
30531: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
30532: l_log_module VARCHAR2(240);
30533:
30534: --
30535: -- Upgrade strategy
30597: ') = 'N'
30598: THEN
30599:
30600: --
30601: XLA_AE_LINES_PKG.SetNewLine;
30602:
30603: p_balance_type_code := l_balance_type_code;
30604: -- set the flag so later we will know whether the gain loss line needs to be created
30605:
30609:
30610: --
30611: -- bulk performance
30612: --
30613: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
30614: p_header_num => 0); -- 4262811
30615: --
30616: -- set accounting line options
30617: --
30614: p_header_num => 0); -- 4262811
30615: --
30616: -- set accounting line options
30617: --
30618: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
30619: p_natural_side_code => 'D'
30620: , p_gain_or_loss_flag => 'N'
30621: , p_gl_transfer_mode_code => 'S'
30622: , p_acct_entry_type_code => 'A'
30628: --
30629: --
30630: -- set accounting line type info
30631: --
30632: xla_ae_lines_pkg.SetAcctLineType
30633: (p_component_type => l_component_type
30634: ,p_event_type_code => l_event_type_code
30635: ,p_line_definition_owner_code => l_line_definition_owner_code
30636: ,p_line_definition_code => l_line_definition_code
30642: ,p_event_class_code => l_event_class_code);
30643: --
30644: -- set accounting class
30645: --
30646: xla_ae_lines_pkg.SetAcctClass(
30647: p_accounting_class_code => 'RECEIVABLE'
30648: , p_ae_header_id => l_ae_header_id
30649: );
30650:
30650:
30651: --
30652: -- set rounding class
30653: --
30654: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30655: 'RECEIVABLE';
30656:
30657: --
30658: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30654: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30655: 'RECEIVABLE';
30656:
30657: --
30658: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30659: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30660: --
30661: -- bulk performance
30662: --
30655: 'RECEIVABLE';
30656:
30657: --
30658: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30659: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30660: --
30661: -- bulk performance
30662: --
30663: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30659: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30660: --
30661: -- bulk performance
30662: --
30663: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30664:
30665: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30666: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30667:
30661: -- bulk performance
30662: --
30663: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30664:
30665: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30666: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30667:
30668: -- 4955764
30669: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30665: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30666: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30667:
30668: -- 4955764
30669: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30670: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
30671:
30672: -- 4458381 Public Sector Enh
30673:
30699: l_rec_acct_attrs.array_num_value(10) := p_source_22;
30700: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
30701: l_rec_acct_attrs.array_char_value(11) := p_source_64;
30702:
30703: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30704: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30705:
30706: ---------------------------------------------------------------------------------------------------------------
30707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30700: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
30701: l_rec_acct_attrs.array_char_value(11) := p_source_64;
30702:
30703: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30704: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30705:
30706: ---------------------------------------------------------------------------------------------------------------
30707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30708: ---------------------------------------------------------------------------------------------------------------
30703: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30704: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30705:
30706: ---------------------------------------------------------------------------------------------------------------
30707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30708: ---------------------------------------------------------------------------------------------------------------
30709: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30710:
30711: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30705:
30706: ---------------------------------------------------------------------------------------------------------------
30707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30708: ---------------------------------------------------------------------------------------------------------------
30709: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30710:
30711: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30712: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30713:
30707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30708: ---------------------------------------------------------------------------------------------------------------
30709: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30710:
30711: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30712: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30713:
30714: IF xla_accounting_cache_pkg.GetValueChar
30715: (p_source_code => 'LEDGER_CATEGORY_CODE'
30708: ---------------------------------------------------------------------------------------------------------------
30709: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30710:
30711: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30712: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30713:
30714: IF xla_accounting_cache_pkg.GetValueChar
30715: (p_source_code => 'LEDGER_CATEGORY_CODE'
30716: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
30719: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
30720: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
30721: )
30722: THEN
30723: xla_ae_lines_pkg.BflowUpgEntry
30724: (p_business_method_code => l_bflow_method_code
30725: ,p_business_class_code => l_bflow_class_code
30726: ,p_balance_type => l_balance_type_code);
30727: ELSE
30725: ,p_business_class_code => l_bflow_class_code
30726: ,p_balance_type => l_balance_type_code);
30727: ELSE
30728: NULL;
30729: XLA_AE_LINES_PKG.business_flow_validation(
30730: p_business_method_code => l_bflow_method_code
30731: ,p_business_class_code => l_bflow_class_code
30732: ,p_inherit_description_flag => l_inherit_desc_flag);
30733: END IF;
30739: --
30740: -- call description
30741: --
30742:
30743: xla_ae_lines_pkg.SetLineDescription(
30744: p_ae_header_id => l_ae_header_id
30745: ,p_description => Description_1 (
30746: p_application_id => p_application_id
30747: , p_ae_header_id => l_ae_header_id
30781: xla_accounting_err_pkg.build_message
30782: (p_appli_s_name => 'XLA'
30783: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
30784: ,p_token_1 => 'LINE_NUMBER'
30785: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
30786: ,p_token_2 => 'LINE_TYPE_NAME'
30787: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
30788: l_component_type
30789: ,l_component_code
30817: --
30818: --
30819: ------------------------------------------------------------------------------------------------
30820: -- 4219869 Business Flow
30821: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
30822: -- Prior Entry. Currently, the following code is always generated.
30823: ------------------------------------------------------------------------------------------------
30824: -- No ValidateCurrentLine for business flow method of Prior Entry
30825:
30826: ------------------------------------------------------------------------------------
30827: -- 4219869 Business Flow
30828: -- Populated credit and debit amounts -- Need to generate this within IF
30829: ------------------------------------------------------------------------------------
30830: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30831:
30832: ----------------------------------------------------------------------------------
30833: -- 4219869 Business Flow
30834: -- Update journal entry status -- Need to generate this within IF
30858: -- To allow MPA report to determine if it should generate report process
30859: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30860: ------------------------------------------------------------------------------------------
30861:
30862: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30863: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30864: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30865: -- call ADRs
30866: -- Bug 4922099
30859: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30860: ------------------------------------------------------------------------------------------
30861:
30862: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30863: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30864: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30865: -- call ADRs
30866: -- Bug 4922099
30867: --
30880:
30881: --
30882: -- Update the line information that should be overwritten
30883: --
30884: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30885: p_header_num => 1);
30886: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30887:
30888: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30882: -- Update the line information that should be overwritten
30883: --
30884: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30885: p_header_num => 1);
30886: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30887:
30888: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30889:
30890: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30884: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30885: p_header_num => 1);
30886: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30887:
30888: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30889:
30890: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30891: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30892: END IF;
30887:
30888: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30889:
30890: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30891: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30892: END IF;
30893:
30894: --
30895: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30894: --
30895: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30896: --
30897: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
30898: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
30899: ELSE
30900: ---------------------------------------------------------------------------------------------------
30901: -- 4262811a Switch Sign
30902: ---------------------------------------------------------------------------------------------------
30899: ELSE
30900: ---------------------------------------------------------------------------------------------------
30901: -- 4262811a Switch Sign
30902: ---------------------------------------------------------------------------------------------------
30903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30900: ---------------------------------------------------------------------------------------------------
30901: -- 4262811a Switch Sign
30902: ---------------------------------------------------------------------------------------------------
30903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30908: -- 5132302
30901: -- 4262811a Switch Sign
30902: ---------------------------------------------------------------------------------------------------
30903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30908: -- 5132302
30909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30902: ---------------------------------------------------------------------------------------------------
30903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30908: -- 5132302
30909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30903: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30908: -- 5132302
30909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30911:
30905: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30908: -- 5132302
30909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30911:
30912: END IF;
30913:
30906: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30907: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30908: -- 5132302
30909: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30910: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30911:
30912: END IF;
30913:
30914: -- 4955764
30911:
30912: END IF;
30913:
30914: -- 4955764
30915: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30916: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30917:
30918:
30919: XLA_AE_LINES_PKG.ValidateCurrentLine;
30915: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30916: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30917:
30918:
30919: XLA_AE_LINES_PKG.ValidateCurrentLine;
30920: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30921:
30922: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30923: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30916: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30917:
30918:
30919: XLA_AE_LINES_PKG.ValidateCurrentLine;
30920: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30921:
30922: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30923: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30924: ,p_balance_type_code => l_balance_type_code);
31067: --
31068: -- bulk performance
31069: --
31070: l_balance_type_code VARCHAR2(1);
31071: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
31072: l_log_module VARCHAR2(240);
31073:
31074: --
31075: -- Upgrade strategy
31137: ') = 'Y'
31138: THEN
31139:
31140: --
31141: XLA_AE_LINES_PKG.SetNewLine;
31142:
31143: p_balance_type_code := l_balance_type_code;
31144: -- set the flag so later we will know whether the gain loss line needs to be created
31145:
31149:
31150: --
31151: -- bulk performance
31152: --
31153: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
31154: p_header_num => 0); -- 4262811
31155: --
31156: -- set accounting line options
31157: --
31154: p_header_num => 0); -- 4262811
31155: --
31156: -- set accounting line options
31157: --
31158: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
31159: p_natural_side_code => 'D'
31160: , p_gain_or_loss_flag => 'N'
31161: , p_gl_transfer_mode_code => 'S'
31162: , p_acct_entry_type_code => 'A'
31168: --
31169: --
31170: -- set accounting line type info
31171: --
31172: xla_ae_lines_pkg.SetAcctLineType
31173: (p_component_type => l_component_type
31174: ,p_event_type_code => l_event_type_code
31175: ,p_line_definition_owner_code => l_line_definition_owner_code
31176: ,p_line_definition_code => l_line_definition_code
31182: ,p_event_class_code => l_event_class_code);
31183: --
31184: -- set accounting class
31185: --
31186: xla_ae_lines_pkg.SetAcctClass(
31187: p_accounting_class_code => 'REMITTANCE'
31188: , p_ae_header_id => l_ae_header_id
31189: );
31190:
31190:
31191: --
31192: -- set rounding class
31193: --
31194: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31195: 'RECEIVABLE';
31196:
31197: --
31198: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31194: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31195: 'RECEIVABLE';
31196:
31197: --
31198: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31199: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31200: --
31201: -- bulk performance
31202: --
31195: 'RECEIVABLE';
31196:
31197: --
31198: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31199: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31200: --
31201: -- bulk performance
31202: --
31203: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31199: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31200: --
31201: -- bulk performance
31202: --
31203: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31204:
31205: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31206: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31207:
31201: -- bulk performance
31202: --
31203: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31204:
31205: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31206: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31207:
31208: -- 4955764
31209: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31205: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31206: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31207:
31208: -- 4955764
31209: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31210: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
31211:
31212: -- 4458381 Public Sector Enh
31213:
31249: l_rec_acct_attrs.array_num_value(15) := p_source_63;
31250: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
31251: l_rec_acct_attrs.array_char_value(16) := p_source_64;
31252:
31253: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31254: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31255:
31256: ---------------------------------------------------------------------------------------------------------------
31257: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31250: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
31251: l_rec_acct_attrs.array_char_value(16) := p_source_64;
31252:
31253: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31254: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31255:
31256: ---------------------------------------------------------------------------------------------------------------
31257: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31258: ---------------------------------------------------------------------------------------------------------------
31253: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31254: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31255:
31256: ---------------------------------------------------------------------------------------------------------------
31257: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31258: ---------------------------------------------------------------------------------------------------------------
31259: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31260:
31261: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31255:
31256: ---------------------------------------------------------------------------------------------------------------
31257: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31258: ---------------------------------------------------------------------------------------------------------------
31259: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31260:
31261: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31262: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31263:
31257: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31258: ---------------------------------------------------------------------------------------------------------------
31259: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31260:
31261: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31262: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31263:
31264: IF xla_accounting_cache_pkg.GetValueChar
31265: (p_source_code => 'LEDGER_CATEGORY_CODE'
31258: ---------------------------------------------------------------------------------------------------------------
31259: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31260:
31261: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31262: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31263:
31264: IF xla_accounting_cache_pkg.GetValueChar
31265: (p_source_code => 'LEDGER_CATEGORY_CODE'
31266: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
31269: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
31270: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
31271: )
31272: THEN
31273: xla_ae_lines_pkg.BflowUpgEntry
31274: (p_business_method_code => l_bflow_method_code
31275: ,p_business_class_code => l_bflow_class_code
31276: ,p_balance_type => l_balance_type_code);
31277: ELSE
31286: --
31287: -- call description
31288: --
31289:
31290: xla_ae_lines_pkg.SetLineDescription(
31291: p_ae_header_id => l_ae_header_id
31292: ,p_description => Description_1 (
31293: p_application_id => p_application_id
31294: , p_ae_header_id => l_ae_header_id
31318: , x_value_type_code => l_adr_value_type_code
31319: , p_side => 'NA'
31320: );
31321:
31322: xla_ae_lines_pkg.set_ccid(
31323: p_code_combination_id => l_ccid
31324: , p_value_type_code => l_adr_value_type_code
31325: , p_transaction_coa_id => l_adr_transaction_coa_id
31326: , p_accounting_coa_id => l_adr_accounting_coa_id
31354: xla_accounting_err_pkg.build_message
31355: (p_appli_s_name => 'XLA'
31356: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
31357: ,p_token_1 => 'LINE_NUMBER'
31358: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
31359: ,p_token_2 => 'LINE_TYPE_NAME'
31360: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
31361: l_component_type
31362: ,l_component_code
31390: --
31391: --
31392: ------------------------------------------------------------------------------------------------
31393: -- 4219869 Business Flow
31394: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31395: -- Prior Entry. Currently, the following code is always generated.
31396: ------------------------------------------------------------------------------------------------
31397: XLA_AE_LINES_PKG.ValidateCurrentLine;
31398:
31393: -- 4219869 Business Flow
31394: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31395: -- Prior Entry. Currently, the following code is always generated.
31396: ------------------------------------------------------------------------------------------------
31397: XLA_AE_LINES_PKG.ValidateCurrentLine;
31398:
31399: ------------------------------------------------------------------------------------
31400: -- 4219869 Business Flow
31401: -- Populated credit and debit amounts -- Need to generate this within IF
31399: ------------------------------------------------------------------------------------
31400: -- 4219869 Business Flow
31401: -- Populated credit and debit amounts -- Need to generate this within IF
31402: ------------------------------------------------------------------------------------
31403: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31404:
31405: ----------------------------------------------------------------------------------
31406: -- 4219869 Business Flow
31407: -- Update journal entry status -- Need to generate this within IF
31431: -- To allow MPA report to determine if it should generate report process
31432: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31433: ------------------------------------------------------------------------------------------
31434:
31435: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31436: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31437: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31438: -- call ADRs
31439: -- Bug 4922099
31432: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31433: ------------------------------------------------------------------------------------------
31434:
31435: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31436: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31437: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31438: -- call ADRs
31439: -- Bug 4922099
31440: --
31456: , x_value_type_code => l_adr_value_type_code
31457: , p_side => 'NA'
31458: );
31459:
31460: xla_ae_lines_pkg.set_ccid(
31461: p_code_combination_id => l_ccid
31462: , p_value_type_code => l_adr_value_type_code
31463: , p_transaction_coa_id => l_adr_transaction_coa_id
31464: , p_accounting_coa_id => l_adr_accounting_coa_id
31479:
31480: --
31481: -- Update the line information that should be overwritten
31482: --
31483: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31484: p_header_num => 1);
31485: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31486:
31487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31481: -- Update the line information that should be overwritten
31482: --
31483: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31484: p_header_num => 1);
31485: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31486:
31487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31488:
31489: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31483: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31484: p_header_num => 1);
31485: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31486:
31487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31488:
31489: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31490: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31491: END IF;
31486:
31487: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31488:
31489: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31490: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31491: END IF;
31492:
31493: --
31494: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31493: --
31494: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31495: --
31496: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
31497: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
31498: ELSE
31499: ---------------------------------------------------------------------------------------------------
31500: -- 4262811a Switch Sign
31501: ---------------------------------------------------------------------------------------------------
31498: ELSE
31499: ---------------------------------------------------------------------------------------------------
31500: -- 4262811a Switch Sign
31501: ---------------------------------------------------------------------------------------------------
31502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31499: ---------------------------------------------------------------------------------------------------
31500: -- 4262811a Switch Sign
31501: ---------------------------------------------------------------------------------------------------
31502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31507: -- 5132302
31500: -- 4262811a Switch Sign
31501: ---------------------------------------------------------------------------------------------------
31502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31507: -- 5132302
31508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31501: ---------------------------------------------------------------------------------------------------
31502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31507: -- 5132302
31508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31502: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31503: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31507: -- 5132302
31508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31510:
31504: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31507: -- 5132302
31508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31510:
31511: END IF;
31512:
31505: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31506: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31507: -- 5132302
31508: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31509: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31510:
31511: END IF;
31512:
31513: -- 4955764
31510:
31511: END IF;
31512:
31513: -- 4955764
31514: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31515: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31516:
31517:
31518: XLA_AE_LINES_PKG.ValidateCurrentLine;
31514: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31515: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31516:
31517:
31518: XLA_AE_LINES_PKG.ValidateCurrentLine;
31519: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31520:
31521: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31522: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31515: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31516:
31517:
31518: XLA_AE_LINES_PKG.ValidateCurrentLine;
31519: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31520:
31521: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31522: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31523: ,p_balance_type_code => l_balance_type_code);
31654: --
31655: -- bulk performance
31656: --
31657: l_balance_type_code VARCHAR2(1);
31658: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
31659: l_log_module VARCHAR2(240);
31660:
31661: --
31662: -- Upgrade strategy
31724: ') = 'N'
31725: THEN
31726:
31727: --
31728: XLA_AE_LINES_PKG.SetNewLine;
31729:
31730: p_balance_type_code := l_balance_type_code;
31731: -- set the flag so later we will know whether the gain loss line needs to be created
31732:
31736:
31737: --
31738: -- bulk performance
31739: --
31740: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
31741: p_header_num => 0); -- 4262811
31742: --
31743: -- set accounting line options
31744: --
31741: p_header_num => 0); -- 4262811
31742: --
31743: -- set accounting line options
31744: --
31745: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
31746: p_natural_side_code => 'D'
31747: , p_gain_or_loss_flag => 'N'
31748: , p_gl_transfer_mode_code => 'S'
31749: , p_acct_entry_type_code => 'A'
31755: --
31756: --
31757: -- set accounting line type info
31758: --
31759: xla_ae_lines_pkg.SetAcctLineType
31760: (p_component_type => l_component_type
31761: ,p_event_type_code => l_event_type_code
31762: ,p_line_definition_owner_code => l_line_definition_owner_code
31763: ,p_line_definition_code => l_line_definition_code
31769: ,p_event_class_code => l_event_class_code);
31770: --
31771: -- set accounting class
31772: --
31773: xla_ae_lines_pkg.SetAcctClass(
31774: p_accounting_class_code => 'RECEIVABLE'
31775: , p_ae_header_id => l_ae_header_id
31776: );
31777:
31777:
31778: --
31779: -- set rounding class
31780: --
31781: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31782: 'RECEIVABLE';
31783:
31784: --
31785: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31781: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31782: 'RECEIVABLE';
31783:
31784: --
31785: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31786: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31787: --
31788: -- bulk performance
31789: --
31782: 'RECEIVABLE';
31783:
31784: --
31785: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31786: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31787: --
31788: -- bulk performance
31789: --
31790: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31786: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31787: --
31788: -- bulk performance
31789: --
31790: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31791:
31792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31793: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31794:
31788: -- bulk performance
31789: --
31790: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31791:
31792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31793: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31794:
31795: -- 4955764
31796: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31793: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31794:
31795: -- 4955764
31796: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31797: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
31798:
31799: -- 4458381 Public Sector Enh
31800:
31826: l_rec_acct_attrs.array_num_value(10) := p_source_22;
31827: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
31828: l_rec_acct_attrs.array_char_value(11) := p_source_64;
31829:
31830: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31831: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31832:
31833: ---------------------------------------------------------------------------------------------------------------
31834: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31827: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
31828: l_rec_acct_attrs.array_char_value(11) := p_source_64;
31829:
31830: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31831: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31832:
31833: ---------------------------------------------------------------------------------------------------------------
31834: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31835: ---------------------------------------------------------------------------------------------------------------
31830: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31831: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31832:
31833: ---------------------------------------------------------------------------------------------------------------
31834: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31835: ---------------------------------------------------------------------------------------------------------------
31836: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31837:
31838: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31832:
31833: ---------------------------------------------------------------------------------------------------------------
31834: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31835: ---------------------------------------------------------------------------------------------------------------
31836: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31837:
31838: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31839: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31840:
31834: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31835: ---------------------------------------------------------------------------------------------------------------
31836: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31837:
31838: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31839: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31840:
31841: IF xla_accounting_cache_pkg.GetValueChar
31842: (p_source_code => 'LEDGER_CATEGORY_CODE'
31835: ---------------------------------------------------------------------------------------------------------------
31836: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31837:
31838: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31839: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31840:
31841: IF xla_accounting_cache_pkg.GetValueChar
31842: (p_source_code => 'LEDGER_CATEGORY_CODE'
31843: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
31846: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
31847: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
31848: )
31849: THEN
31850: xla_ae_lines_pkg.BflowUpgEntry
31851: (p_business_method_code => l_bflow_method_code
31852: ,p_business_class_code => l_bflow_class_code
31853: ,p_balance_type => l_balance_type_code);
31854: ELSE
31852: ,p_business_class_code => l_bflow_class_code
31853: ,p_balance_type => l_balance_type_code);
31854: ELSE
31855: NULL;
31856: XLA_AE_LINES_PKG.business_flow_validation(
31857: p_business_method_code => l_bflow_method_code
31858: ,p_business_class_code => l_bflow_class_code
31859: ,p_inherit_description_flag => l_inherit_desc_flag);
31860: END IF;
31866: --
31867: -- call description
31868: --
31869:
31870: xla_ae_lines_pkg.SetLineDescription(
31871: p_ae_header_id => l_ae_header_id
31872: ,p_description => Description_1 (
31873: p_application_id => p_application_id
31874: , p_ae_header_id => l_ae_header_id
31908: xla_accounting_err_pkg.build_message
31909: (p_appli_s_name => 'XLA'
31910: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
31911: ,p_token_1 => 'LINE_NUMBER'
31912: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
31913: ,p_token_2 => 'LINE_TYPE_NAME'
31914: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
31915: l_component_type
31916: ,l_component_code
31944: --
31945: --
31946: ------------------------------------------------------------------------------------------------
31947: -- 4219869 Business Flow
31948: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31949: -- Prior Entry. Currently, the following code is always generated.
31950: ------------------------------------------------------------------------------------------------
31951: -- No ValidateCurrentLine for business flow method of Prior Entry
31952:
31953: ------------------------------------------------------------------------------------
31954: -- 4219869 Business Flow
31955: -- Populated credit and debit amounts -- Need to generate this within IF
31956: ------------------------------------------------------------------------------------
31957: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31958:
31959: ----------------------------------------------------------------------------------
31960: -- 4219869 Business Flow
31961: -- Update journal entry status -- Need to generate this within IF
31985: -- To allow MPA report to determine if it should generate report process
31986: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31987: ------------------------------------------------------------------------------------------
31988:
31989: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31990: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31991: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31992: -- call ADRs
31993: -- Bug 4922099
31986: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31987: ------------------------------------------------------------------------------------------
31988:
31989: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31990: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31991: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31992: -- call ADRs
31993: -- Bug 4922099
31994: --
32007:
32008: --
32009: -- Update the line information that should be overwritten
32010: --
32011: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32012: p_header_num => 1);
32013: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32014:
32015: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32009: -- Update the line information that should be overwritten
32010: --
32011: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32012: p_header_num => 1);
32013: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32014:
32015: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32016:
32017: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32011: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32012: p_header_num => 1);
32013: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32014:
32015: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32016:
32017: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32018: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32019: END IF;
32014:
32015: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32016:
32017: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32018: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32019: END IF;
32020:
32021: --
32022: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32021: --
32022: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32023: --
32024: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
32025: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
32026: ELSE
32027: ---------------------------------------------------------------------------------------------------
32028: -- 4262811a Switch Sign
32029: ---------------------------------------------------------------------------------------------------
32026: ELSE
32027: ---------------------------------------------------------------------------------------------------
32028: -- 4262811a Switch Sign
32029: ---------------------------------------------------------------------------------------------------
32030: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32031: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32033: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32027: ---------------------------------------------------------------------------------------------------
32028: -- 4262811a Switch Sign
32029: ---------------------------------------------------------------------------------------------------
32030: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32031: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32033: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32035: -- 5132302
32028: -- 4262811a Switch Sign
32029: ---------------------------------------------------------------------------------------------------
32030: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32031: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32033: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32035: -- 5132302
32036: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32029: ---------------------------------------------------------------------------------------------------
32030: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32031: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32033: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32035: -- 5132302
32036: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32037: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32030: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32031: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32033: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32035: -- 5132302
32036: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32037: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32038:
32032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32033: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32035: -- 5132302
32036: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32037: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32038:
32039: END IF;
32040:
32033: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32035: -- 5132302
32036: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32037: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32038:
32039: END IF;
32040:
32041: -- 4955764
32038:
32039: END IF;
32040:
32041: -- 4955764
32042: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32043: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32044:
32045:
32046: XLA_AE_LINES_PKG.ValidateCurrentLine;
32042: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32043: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32044:
32045:
32046: XLA_AE_LINES_PKG.ValidateCurrentLine;
32047: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32048:
32049: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32050: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32043: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32044:
32045:
32046: XLA_AE_LINES_PKG.ValidateCurrentLine;
32047: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32048:
32049: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32050: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32051: ,p_balance_type_code => l_balance_type_code);
32178: --
32179: -- bulk performance
32180: --
32181: l_balance_type_code VARCHAR2(1);
32182: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
32183: l_log_module VARCHAR2(240);
32184:
32185: --
32186: -- Upgrade strategy
32248: ') = 'N'
32249: THEN
32250:
32251: --
32252: XLA_AE_LINES_PKG.SetNewLine;
32253:
32254: p_balance_type_code := l_balance_type_code;
32255: -- set the flag so later we will know whether the gain loss line needs to be created
32256:
32260:
32261: --
32262: -- bulk performance
32263: --
32264: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
32265: p_header_num => 0); -- 4262811
32266: --
32267: -- set accounting line options
32268: --
32265: p_header_num => 0); -- 4262811
32266: --
32267: -- set accounting line options
32268: --
32269: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
32270: p_natural_side_code => 'C'
32271: , p_gain_or_loss_flag => 'N'
32272: , p_gl_transfer_mode_code => 'S'
32273: , p_acct_entry_type_code => 'A'
32279: --
32280: --
32281: -- set accounting line type info
32282: --
32283: xla_ae_lines_pkg.SetAcctLineType
32284: (p_component_type => l_component_type
32285: ,p_event_type_code => l_event_type_code
32286: ,p_line_definition_owner_code => l_line_definition_owner_code
32287: ,p_line_definition_code => l_line_definition_code
32293: ,p_event_class_code => l_event_class_code);
32294: --
32295: -- set accounting class
32296: --
32297: xla_ae_lines_pkg.SetAcctClass(
32298: p_accounting_class_code => 'BANK_CHG'
32299: , p_ae_header_id => l_ae_header_id
32300: );
32301:
32301:
32302: --
32303: -- set rounding class
32304: --
32305: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32306: 'RECEIVABLE';
32307:
32308: --
32309: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32305: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32306: 'RECEIVABLE';
32307:
32308: --
32309: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32310: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32311: --
32312: -- bulk performance
32313: --
32306: 'RECEIVABLE';
32307:
32308: --
32309: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32310: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32311: --
32312: -- bulk performance
32313: --
32314: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32310: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32311: --
32312: -- bulk performance
32313: --
32314: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32315:
32316: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32317: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32318:
32312: -- bulk performance
32313: --
32314: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32315:
32316: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32317: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32318:
32319: -- 4955764
32320: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32316: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32317: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32318:
32319: -- 4955764
32320: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32321: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
32322:
32323: -- 4458381 Public Sector Enh
32324:
32344: l_rec_acct_attrs.array_char_value(7) := p_source_21;
32345: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
32346: l_rec_acct_attrs.array_num_value(8) := p_source_22;
32347:
32348: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32349: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32350:
32351: ---------------------------------------------------------------------------------------------------------------
32352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32345: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
32346: l_rec_acct_attrs.array_num_value(8) := p_source_22;
32347:
32348: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32349: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32350:
32351: ---------------------------------------------------------------------------------------------------------------
32352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32353: ---------------------------------------------------------------------------------------------------------------
32348: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32349: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32350:
32351: ---------------------------------------------------------------------------------------------------------------
32352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32353: ---------------------------------------------------------------------------------------------------------------
32354: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32355:
32356: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32350:
32351: ---------------------------------------------------------------------------------------------------------------
32352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32353: ---------------------------------------------------------------------------------------------------------------
32354: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32355:
32356: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32357: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32358:
32352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32353: ---------------------------------------------------------------------------------------------------------------
32354: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32355:
32356: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32357: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32358:
32359: IF xla_accounting_cache_pkg.GetValueChar
32360: (p_source_code => 'LEDGER_CATEGORY_CODE'
32353: ---------------------------------------------------------------------------------------------------------------
32354: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32355:
32356: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32357: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32358:
32359: IF xla_accounting_cache_pkg.GetValueChar
32360: (p_source_code => 'LEDGER_CATEGORY_CODE'
32361: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
32364: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
32365: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
32366: )
32367: THEN
32368: xla_ae_lines_pkg.BflowUpgEntry
32369: (p_business_method_code => l_bflow_method_code
32370: ,p_business_class_code => l_bflow_class_code
32371: ,p_balance_type => l_balance_type_code);
32372: ELSE
32404: , x_value_type_code => l_adr_value_type_code
32405: , p_side => 'NA'
32406: );
32407:
32408: xla_ae_lines_pkg.set_ccid(
32409: p_code_combination_id => l_ccid
32410: , p_value_type_code => l_adr_value_type_code
32411: , p_transaction_coa_id => l_adr_transaction_coa_id
32412: , p_accounting_coa_id => l_adr_accounting_coa_id
32440: xla_accounting_err_pkg.build_message
32441: (p_appli_s_name => 'XLA'
32442: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
32443: ,p_token_1 => 'LINE_NUMBER'
32444: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
32445: ,p_token_2 => 'LINE_TYPE_NAME'
32446: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
32447: l_component_type
32448: ,l_component_code
32476: --
32477: --
32478: ------------------------------------------------------------------------------------------------
32479: -- 4219869 Business Flow
32480: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32481: -- Prior Entry. Currently, the following code is always generated.
32482: ------------------------------------------------------------------------------------------------
32483: XLA_AE_LINES_PKG.ValidateCurrentLine;
32484:
32479: -- 4219869 Business Flow
32480: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32481: -- Prior Entry. Currently, the following code is always generated.
32482: ------------------------------------------------------------------------------------------------
32483: XLA_AE_LINES_PKG.ValidateCurrentLine;
32484:
32485: ------------------------------------------------------------------------------------
32486: -- 4219869 Business Flow
32487: -- Populated credit and debit amounts -- Need to generate this within IF
32485: ------------------------------------------------------------------------------------
32486: -- 4219869 Business Flow
32487: -- Populated credit and debit amounts -- Need to generate this within IF
32488: ------------------------------------------------------------------------------------
32489: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32490:
32491: ----------------------------------------------------------------------------------
32492: -- 4219869 Business Flow
32493: -- Update journal entry status -- Need to generate this within IF
32517: -- To allow MPA report to determine if it should generate report process
32518: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32519: ------------------------------------------------------------------------------------------
32520:
32521: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32522: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32523: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32524: -- call ADRs
32525: -- Bug 4922099
32518: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32519: ------------------------------------------------------------------------------------------
32520:
32521: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32522: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32523: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32524: -- call ADRs
32525: -- Bug 4922099
32526: --
32542: , x_value_type_code => l_adr_value_type_code
32543: , p_side => 'NA'
32544: );
32545:
32546: xla_ae_lines_pkg.set_ccid(
32547: p_code_combination_id => l_ccid
32548: , p_value_type_code => l_adr_value_type_code
32549: , p_transaction_coa_id => l_adr_transaction_coa_id
32550: , p_accounting_coa_id => l_adr_accounting_coa_id
32565:
32566: --
32567: -- Update the line information that should be overwritten
32568: --
32569: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32570: p_header_num => 1);
32571: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32572:
32573: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32567: -- Update the line information that should be overwritten
32568: --
32569: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32570: p_header_num => 1);
32571: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32572:
32573: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32574:
32575: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32569: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32570: p_header_num => 1);
32571: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32572:
32573: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32574:
32575: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32576: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32577: END IF;
32572:
32573: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32574:
32575: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32576: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32577: END IF;
32578:
32579: --
32580: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32579: --
32580: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32581: --
32582: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
32583: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
32584: ELSE
32585: ---------------------------------------------------------------------------------------------------
32586: -- 4262811a Switch Sign
32587: ---------------------------------------------------------------------------------------------------
32584: ELSE
32585: ---------------------------------------------------------------------------------------------------
32586: -- 4262811a Switch Sign
32587: ---------------------------------------------------------------------------------------------------
32588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32585: ---------------------------------------------------------------------------------------------------
32586: -- 4262811a Switch Sign
32587: ---------------------------------------------------------------------------------------------------
32588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32593: -- 5132302
32586: -- 4262811a Switch Sign
32587: ---------------------------------------------------------------------------------------------------
32588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32593: -- 5132302
32594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32587: ---------------------------------------------------------------------------------------------------
32588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32593: -- 5132302
32594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32593: -- 5132302
32594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32596:
32590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32593: -- 5132302
32594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32596:
32597: END IF;
32598:
32591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32593: -- 5132302
32594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32596:
32597: END IF;
32598:
32599: -- 4955764
32596:
32597: END IF;
32598:
32599: -- 4955764
32600: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32601: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32602:
32603:
32604: XLA_AE_LINES_PKG.ValidateCurrentLine;
32600: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32601: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32602:
32603:
32604: XLA_AE_LINES_PKG.ValidateCurrentLine;
32605: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32606:
32607: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32608: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32601: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32602:
32603:
32604: XLA_AE_LINES_PKG.ValidateCurrentLine;
32605: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32606:
32607: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32608: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32609: ,p_balance_type_code => l_balance_type_code);
32736: --
32737: -- bulk performance
32738: --
32739: l_balance_type_code VARCHAR2(1);
32740: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
32741: l_log_module VARCHAR2(240);
32742:
32743: --
32744: -- Upgrade strategy
32806: ') = 'N'
32807: THEN
32808:
32809: --
32810: XLA_AE_LINES_PKG.SetNewLine;
32811:
32812: p_balance_type_code := l_balance_type_code;
32813: -- set the flag so later we will know whether the gain loss line needs to be created
32814:
32818:
32819: --
32820: -- bulk performance
32821: --
32822: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
32823: p_header_num => 0); -- 4262811
32824: --
32825: -- set accounting line options
32826: --
32823: p_header_num => 0); -- 4262811
32824: --
32825: -- set accounting line options
32826: --
32827: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
32828: p_natural_side_code => 'C'
32829: , p_gain_or_loss_flag => 'N'
32830: , p_gl_transfer_mode_code => 'S'
32831: , p_acct_entry_type_code => 'A'
32837: --
32838: --
32839: -- set accounting line type info
32840: --
32841: xla_ae_lines_pkg.SetAcctLineType
32842: (p_component_type => l_component_type
32843: ,p_event_type_code => l_event_type_code
32844: ,p_line_definition_owner_code => l_line_definition_owner_code
32845: ,p_line_definition_code => l_line_definition_code
32851: ,p_event_class_code => l_event_class_code);
32852: --
32853: -- set accounting class
32854: --
32855: xla_ae_lines_pkg.SetAcctClass(
32856: p_accounting_class_code => 'SHORT_TERM_DEBT'
32857: , p_ae_header_id => l_ae_header_id
32858: );
32859:
32859:
32860: --
32861: -- set rounding class
32862: --
32863: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32864: 'RECEIVABLE';
32865:
32866: --
32867: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32863: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32864: 'RECEIVABLE';
32865:
32866: --
32867: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32868: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32869: --
32870: -- bulk performance
32871: --
32864: 'RECEIVABLE';
32865:
32866: --
32867: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32868: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32869: --
32870: -- bulk performance
32871: --
32872: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32868: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32869: --
32870: -- bulk performance
32871: --
32872: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32873:
32874: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32875: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32876:
32870: -- bulk performance
32871: --
32872: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32873:
32874: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32875: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32876:
32877: -- 4955764
32878: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32874: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32875: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32876:
32877: -- 4955764
32878: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32879: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
32880:
32881: -- 4458381 Public Sector Enh
32882:
32902: l_rec_acct_attrs.array_char_value(7) := p_source_21;
32903: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
32904: l_rec_acct_attrs.array_num_value(8) := p_source_22;
32905:
32906: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32907: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32908:
32909: ---------------------------------------------------------------------------------------------------------------
32910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32903: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
32904: l_rec_acct_attrs.array_num_value(8) := p_source_22;
32905:
32906: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32907: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32908:
32909: ---------------------------------------------------------------------------------------------------------------
32910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32911: ---------------------------------------------------------------------------------------------------------------
32906: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32907: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32908:
32909: ---------------------------------------------------------------------------------------------------------------
32910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32911: ---------------------------------------------------------------------------------------------------------------
32912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32913:
32914: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32908:
32909: ---------------------------------------------------------------------------------------------------------------
32910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32911: ---------------------------------------------------------------------------------------------------------------
32912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32913:
32914: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32915: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32916:
32910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32911: ---------------------------------------------------------------------------------------------------------------
32912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32913:
32914: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32915: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32916:
32917: IF xla_accounting_cache_pkg.GetValueChar
32918: (p_source_code => 'LEDGER_CATEGORY_CODE'
32911: ---------------------------------------------------------------------------------------------------------------
32912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32913:
32914: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32915: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32916:
32917: IF xla_accounting_cache_pkg.GetValueChar
32918: (p_source_code => 'LEDGER_CATEGORY_CODE'
32919: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
32922: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
32923: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
32924: )
32925: THEN
32926: xla_ae_lines_pkg.BflowUpgEntry
32927: (p_business_method_code => l_bflow_method_code
32928: ,p_business_class_code => l_bflow_class_code
32929: ,p_balance_type => l_balance_type_code);
32930: ELSE
32962: , x_value_type_code => l_adr_value_type_code
32963: , p_side => 'NA'
32964: );
32965:
32966: xla_ae_lines_pkg.set_ccid(
32967: p_code_combination_id => l_ccid
32968: , p_value_type_code => l_adr_value_type_code
32969: , p_transaction_coa_id => l_adr_transaction_coa_id
32970: , p_accounting_coa_id => l_adr_accounting_coa_id
32998: xla_accounting_err_pkg.build_message
32999: (p_appli_s_name => 'XLA'
33000: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
33001: ,p_token_1 => 'LINE_NUMBER'
33002: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
33003: ,p_token_2 => 'LINE_TYPE_NAME'
33004: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
33005: l_component_type
33006: ,l_component_code
33034: --
33035: --
33036: ------------------------------------------------------------------------------------------------
33037: -- 4219869 Business Flow
33038: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33039: -- Prior Entry. Currently, the following code is always generated.
33040: ------------------------------------------------------------------------------------------------
33041: XLA_AE_LINES_PKG.ValidateCurrentLine;
33042:
33037: -- 4219869 Business Flow
33038: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33039: -- Prior Entry. Currently, the following code is always generated.
33040: ------------------------------------------------------------------------------------------------
33041: XLA_AE_LINES_PKG.ValidateCurrentLine;
33042:
33043: ------------------------------------------------------------------------------------
33044: -- 4219869 Business Flow
33045: -- Populated credit and debit amounts -- Need to generate this within IF
33043: ------------------------------------------------------------------------------------
33044: -- 4219869 Business Flow
33045: -- Populated credit and debit amounts -- Need to generate this within IF
33046: ------------------------------------------------------------------------------------
33047: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33048:
33049: ----------------------------------------------------------------------------------
33050: -- 4219869 Business Flow
33051: -- Update journal entry status -- Need to generate this within IF
33075: -- To allow MPA report to determine if it should generate report process
33076: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33077: ------------------------------------------------------------------------------------------
33078:
33079: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33080: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33081: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33082: -- call ADRs
33083: -- Bug 4922099
33076: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33077: ------------------------------------------------------------------------------------------
33078:
33079: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33080: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33081: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33082: -- call ADRs
33083: -- Bug 4922099
33084: --
33100: , x_value_type_code => l_adr_value_type_code
33101: , p_side => 'NA'
33102: );
33103:
33104: xla_ae_lines_pkg.set_ccid(
33105: p_code_combination_id => l_ccid
33106: , p_value_type_code => l_adr_value_type_code
33107: , p_transaction_coa_id => l_adr_transaction_coa_id
33108: , p_accounting_coa_id => l_adr_accounting_coa_id
33123:
33124: --
33125: -- Update the line information that should be overwritten
33126: --
33127: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33128: p_header_num => 1);
33129: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33130:
33131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33125: -- Update the line information that should be overwritten
33126: --
33127: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33128: p_header_num => 1);
33129: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33130:
33131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33132:
33133: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33127: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33128: p_header_num => 1);
33129: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33130:
33131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33132:
33133: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33134: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33135: END IF;
33130:
33131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33132:
33133: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33134: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33135: END IF;
33136:
33137: --
33138: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33137: --
33138: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33139: --
33140: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
33141: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
33142: ELSE
33143: ---------------------------------------------------------------------------------------------------
33144: -- 4262811a Switch Sign
33145: ---------------------------------------------------------------------------------------------------
33142: ELSE
33143: ---------------------------------------------------------------------------------------------------
33144: -- 4262811a Switch Sign
33145: ---------------------------------------------------------------------------------------------------
33146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33143: ---------------------------------------------------------------------------------------------------
33144: -- 4262811a Switch Sign
33145: ---------------------------------------------------------------------------------------------------
33146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33151: -- 5132302
33144: -- 4262811a Switch Sign
33145: ---------------------------------------------------------------------------------------------------
33146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33151: -- 5132302
33152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33145: ---------------------------------------------------------------------------------------------------
33146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33151: -- 5132302
33152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33153: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33151: -- 5132302
33152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33153: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33154:
33148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33151: -- 5132302
33152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33153: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33154:
33155: END IF;
33156:
33149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33151: -- 5132302
33152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33153: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33154:
33155: END IF;
33156:
33157: -- 4955764
33154:
33155: END IF;
33156:
33157: -- 4955764
33158: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33159: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33160:
33161:
33162: XLA_AE_LINES_PKG.ValidateCurrentLine;
33158: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33159: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33160:
33161:
33162: XLA_AE_LINES_PKG.ValidateCurrentLine;
33163: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33164:
33165: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33166: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33159: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33160:
33161:
33162: XLA_AE_LINES_PKG.ValidateCurrentLine;
33163: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33164:
33165: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33166: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33167: ,p_balance_type_code => l_balance_type_code);
33294: --
33295: -- bulk performance
33296: --
33297: l_balance_type_code VARCHAR2(1);
33298: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
33299: l_log_module VARCHAR2(240);
33300:
33301: --
33302: -- Upgrade strategy
33364: ') = 'N'
33365: THEN
33366:
33367: --
33368: XLA_AE_LINES_PKG.SetNewLine;
33369:
33370: p_balance_type_code := l_balance_type_code;
33371: -- set the flag so later we will know whether the gain loss line needs to be created
33372:
33376:
33377: --
33378: -- bulk performance
33379: --
33380: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
33381: p_header_num => 0); -- 4262811
33382: --
33383: -- set accounting line options
33384: --
33381: p_header_num => 0); -- 4262811
33382: --
33383: -- set accounting line options
33384: --
33385: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
33386: p_natural_side_code => 'C'
33387: , p_gain_or_loss_flag => 'N'
33388: , p_gl_transfer_mode_code => 'S'
33389: , p_acct_entry_type_code => 'A'
33395: --
33396: --
33397: -- set accounting line type info
33398: --
33399: xla_ae_lines_pkg.SetAcctLineType
33400: (p_component_type => l_component_type
33401: ,p_event_type_code => l_event_type_code
33402: ,p_line_definition_owner_code => l_line_definition_owner_code
33403: ,p_line_definition_code => l_line_definition_code
33409: ,p_event_class_code => l_event_class_code);
33410: --
33411: -- set accounting class
33412: --
33413: xla_ae_lines_pkg.SetAcctClass(
33414: p_accounting_class_code => 'FACTOR'
33415: , p_ae_header_id => l_ae_header_id
33416: );
33417:
33417:
33418: --
33419: -- set rounding class
33420: --
33421: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33422: 'RECEIVABLE';
33423:
33424: --
33425: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33421: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33422: 'RECEIVABLE';
33423:
33424: --
33425: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33426: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33427: --
33428: -- bulk performance
33429: --
33422: 'RECEIVABLE';
33423:
33424: --
33425: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33426: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33427: --
33428: -- bulk performance
33429: --
33430: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33426: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33427: --
33428: -- bulk performance
33429: --
33430: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33431:
33432: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33433: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33434:
33428: -- bulk performance
33429: --
33430: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33431:
33432: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33433: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33434:
33435: -- 4955764
33436: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33432: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33433: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33434:
33435: -- 4955764
33436: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33437: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
33438:
33439: -- 4458381 Public Sector Enh
33440:
33460: l_rec_acct_attrs.array_char_value(7) := p_source_21;
33461: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
33462: l_rec_acct_attrs.array_num_value(8) := p_source_22;
33463:
33464: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33465: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33466:
33467: ---------------------------------------------------------------------------------------------------------------
33468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33461: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
33462: l_rec_acct_attrs.array_num_value(8) := p_source_22;
33463:
33464: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33465: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33466:
33467: ---------------------------------------------------------------------------------------------------------------
33468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33469: ---------------------------------------------------------------------------------------------------------------
33464: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33465: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33466:
33467: ---------------------------------------------------------------------------------------------------------------
33468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33469: ---------------------------------------------------------------------------------------------------------------
33470: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33471:
33472: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33466:
33467: ---------------------------------------------------------------------------------------------------------------
33468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33469: ---------------------------------------------------------------------------------------------------------------
33470: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33471:
33472: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33473: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33474:
33468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33469: ---------------------------------------------------------------------------------------------------------------
33470: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33471:
33472: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33473: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33474:
33475: IF xla_accounting_cache_pkg.GetValueChar
33476: (p_source_code => 'LEDGER_CATEGORY_CODE'
33469: ---------------------------------------------------------------------------------------------------------------
33470: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33471:
33472: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33473: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33474:
33475: IF xla_accounting_cache_pkg.GetValueChar
33476: (p_source_code => 'LEDGER_CATEGORY_CODE'
33477: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
33480: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
33481: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
33482: )
33483: THEN
33484: xla_ae_lines_pkg.BflowUpgEntry
33485: (p_business_method_code => l_bflow_method_code
33486: ,p_business_class_code => l_bflow_class_code
33487: ,p_balance_type => l_balance_type_code);
33488: ELSE
33520: , x_value_type_code => l_adr_value_type_code
33521: , p_side => 'NA'
33522: );
33523:
33524: xla_ae_lines_pkg.set_ccid(
33525: p_code_combination_id => l_ccid
33526: , p_value_type_code => l_adr_value_type_code
33527: , p_transaction_coa_id => l_adr_transaction_coa_id
33528: , p_accounting_coa_id => l_adr_accounting_coa_id
33556: xla_accounting_err_pkg.build_message
33557: (p_appli_s_name => 'XLA'
33558: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
33559: ,p_token_1 => 'LINE_NUMBER'
33560: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
33561: ,p_token_2 => 'LINE_TYPE_NAME'
33562: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
33563: l_component_type
33564: ,l_component_code
33592: --
33593: --
33594: ------------------------------------------------------------------------------------------------
33595: -- 4219869 Business Flow
33596: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33597: -- Prior Entry. Currently, the following code is always generated.
33598: ------------------------------------------------------------------------------------------------
33599: XLA_AE_LINES_PKG.ValidateCurrentLine;
33600:
33595: -- 4219869 Business Flow
33596: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33597: -- Prior Entry. Currently, the following code is always generated.
33598: ------------------------------------------------------------------------------------------------
33599: XLA_AE_LINES_PKG.ValidateCurrentLine;
33600:
33601: ------------------------------------------------------------------------------------
33602: -- 4219869 Business Flow
33603: -- Populated credit and debit amounts -- Need to generate this within IF
33601: ------------------------------------------------------------------------------------
33602: -- 4219869 Business Flow
33603: -- Populated credit and debit amounts -- Need to generate this within IF
33604: ------------------------------------------------------------------------------------
33605: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33606:
33607: ----------------------------------------------------------------------------------
33608: -- 4219869 Business Flow
33609: -- Update journal entry status -- Need to generate this within IF
33633: -- To allow MPA report to determine if it should generate report process
33634: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33635: ------------------------------------------------------------------------------------------
33636:
33637: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33638: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33639: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33640: -- call ADRs
33641: -- Bug 4922099
33634: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33635: ------------------------------------------------------------------------------------------
33636:
33637: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33638: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33639: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33640: -- call ADRs
33641: -- Bug 4922099
33642: --
33658: , x_value_type_code => l_adr_value_type_code
33659: , p_side => 'NA'
33660: );
33661:
33662: xla_ae_lines_pkg.set_ccid(
33663: p_code_combination_id => l_ccid
33664: , p_value_type_code => l_adr_value_type_code
33665: , p_transaction_coa_id => l_adr_transaction_coa_id
33666: , p_accounting_coa_id => l_adr_accounting_coa_id
33681:
33682: --
33683: -- Update the line information that should be overwritten
33684: --
33685: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33686: p_header_num => 1);
33687: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33688:
33689: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33683: -- Update the line information that should be overwritten
33684: --
33685: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33686: p_header_num => 1);
33687: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33688:
33689: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33690:
33691: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33685: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33686: p_header_num => 1);
33687: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33688:
33689: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33690:
33691: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33692: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33693: END IF;
33688:
33689: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33690:
33691: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33692: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33693: END IF;
33694:
33695: --
33696: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33695: --
33696: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33697: --
33698: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
33699: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
33700: ELSE
33701: ---------------------------------------------------------------------------------------------------
33702: -- 4262811a Switch Sign
33703: ---------------------------------------------------------------------------------------------------
33700: ELSE
33701: ---------------------------------------------------------------------------------------------------
33702: -- 4262811a Switch Sign
33703: ---------------------------------------------------------------------------------------------------
33704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33701: ---------------------------------------------------------------------------------------------------
33702: -- 4262811a Switch Sign
33703: ---------------------------------------------------------------------------------------------------
33704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33709: -- 5132302
33702: -- 4262811a Switch Sign
33703: ---------------------------------------------------------------------------------------------------
33704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33709: -- 5132302
33710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33703: ---------------------------------------------------------------------------------------------------
33704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33709: -- 5132302
33710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33711: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33709: -- 5132302
33710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33711: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33712:
33706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33709: -- 5132302
33710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33711: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33712:
33713: END IF;
33714:
33707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33709: -- 5132302
33710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33711: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33712:
33713: END IF;
33714:
33715: -- 4955764
33712:
33713: END IF;
33714:
33715: -- 4955764
33716: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33717: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33718:
33719:
33720: XLA_AE_LINES_PKG.ValidateCurrentLine;
33716: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33717: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33718:
33719:
33720: XLA_AE_LINES_PKG.ValidateCurrentLine;
33721: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33722:
33723: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33724: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33717: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33718:
33719:
33720: XLA_AE_LINES_PKG.ValidateCurrentLine;
33721: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33722:
33723: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33724: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33725: ,p_balance_type_code => l_balance_type_code);
33852: --
33853: -- bulk performance
33854: --
33855: l_balance_type_code VARCHAR2(1);
33856: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
33857: l_log_module VARCHAR2(240);
33858:
33859: --
33860: -- Upgrade strategy
33922: ') = 'N'
33923: THEN
33924:
33925: --
33926: XLA_AE_LINES_PKG.SetNewLine;
33927:
33928: p_balance_type_code := l_balance_type_code;
33929: -- set the flag so later we will know whether the gain loss line needs to be created
33930:
33934:
33935: --
33936: -- bulk performance
33937: --
33938: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
33939: p_header_num => 0); -- 4262811
33940: --
33941: -- set accounting line options
33942: --
33939: p_header_num => 0); -- 4262811
33940: --
33941: -- set accounting line options
33942: --
33943: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
33944: p_natural_side_code => 'C'
33945: , p_gain_or_loss_flag => 'N'
33946: , p_gl_transfer_mode_code => 'S'
33947: , p_acct_entry_type_code => 'A'
33953: --
33954: --
33955: -- set accounting line type info
33956: --
33957: xla_ae_lines_pkg.SetAcctLineType
33958: (p_component_type => l_component_type
33959: ,p_event_type_code => l_event_type_code
33960: ,p_line_definition_owner_code => l_line_definition_owner_code
33961: ,p_line_definition_code => l_line_definition_code
33967: ,p_event_class_code => l_event_class_code);
33968: --
33969: -- set accounting class
33970: --
33971: xla_ae_lines_pkg.SetAcctClass(
33972: p_accounting_class_code => 'MISC_CASH'
33973: , p_ae_header_id => l_ae_header_id
33974: );
33975:
33975:
33976: --
33977: -- set rounding class
33978: --
33979: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33980: 'RECEIVABLE';
33981:
33982: --
33983: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33979: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33980: 'RECEIVABLE';
33981:
33982: --
33983: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33984: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33985: --
33986: -- bulk performance
33987: --
33980: 'RECEIVABLE';
33981:
33982: --
33983: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33984: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33985: --
33986: -- bulk performance
33987: --
33988: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33984: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33985: --
33986: -- bulk performance
33987: --
33988: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33989:
33990: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33991: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33992:
33986: -- bulk performance
33987: --
33988: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33989:
33990: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33991: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33992:
33993: -- 4955764
33994: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33990: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33991: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33992:
33993: -- 4955764
33994: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33995: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
33996:
33997: -- 4458381 Public Sector Enh
33998:
34018: l_rec_acct_attrs.array_char_value(7) := p_source_21;
34019: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
34020: l_rec_acct_attrs.array_num_value(8) := p_source_22;
34021:
34022: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34023: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34024:
34025: ---------------------------------------------------------------------------------------------------------------
34026: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34019: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
34020: l_rec_acct_attrs.array_num_value(8) := p_source_22;
34021:
34022: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34023: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34024:
34025: ---------------------------------------------------------------------------------------------------------------
34026: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34027: ---------------------------------------------------------------------------------------------------------------
34022: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34023: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34024:
34025: ---------------------------------------------------------------------------------------------------------------
34026: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34027: ---------------------------------------------------------------------------------------------------------------
34028: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34029:
34030: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34024:
34025: ---------------------------------------------------------------------------------------------------------------
34026: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34027: ---------------------------------------------------------------------------------------------------------------
34028: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34029:
34030: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34031: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34032:
34026: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34027: ---------------------------------------------------------------------------------------------------------------
34028: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34029:
34030: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34031: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34032:
34033: IF xla_accounting_cache_pkg.GetValueChar
34034: (p_source_code => 'LEDGER_CATEGORY_CODE'
34027: ---------------------------------------------------------------------------------------------------------------
34028: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34029:
34030: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34031: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34032:
34033: IF xla_accounting_cache_pkg.GetValueChar
34034: (p_source_code => 'LEDGER_CATEGORY_CODE'
34035: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
34038: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
34039: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
34040: )
34041: THEN
34042: xla_ae_lines_pkg.BflowUpgEntry
34043: (p_business_method_code => l_bflow_method_code
34044: ,p_business_class_code => l_bflow_class_code
34045: ,p_balance_type => l_balance_type_code);
34046: ELSE
34078: , x_value_type_code => l_adr_value_type_code
34079: , p_side => 'NA'
34080: );
34081:
34082: xla_ae_lines_pkg.set_ccid(
34083: p_code_combination_id => l_ccid
34084: , p_value_type_code => l_adr_value_type_code
34085: , p_transaction_coa_id => l_adr_transaction_coa_id
34086: , p_accounting_coa_id => l_adr_accounting_coa_id
34114: xla_accounting_err_pkg.build_message
34115: (p_appli_s_name => 'XLA'
34116: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
34117: ,p_token_1 => 'LINE_NUMBER'
34118: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
34119: ,p_token_2 => 'LINE_TYPE_NAME'
34120: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
34121: l_component_type
34122: ,l_component_code
34150: --
34151: --
34152: ------------------------------------------------------------------------------------------------
34153: -- 4219869 Business Flow
34154: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34155: -- Prior Entry. Currently, the following code is always generated.
34156: ------------------------------------------------------------------------------------------------
34157: XLA_AE_LINES_PKG.ValidateCurrentLine;
34158:
34153: -- 4219869 Business Flow
34154: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34155: -- Prior Entry. Currently, the following code is always generated.
34156: ------------------------------------------------------------------------------------------------
34157: XLA_AE_LINES_PKG.ValidateCurrentLine;
34158:
34159: ------------------------------------------------------------------------------------
34160: -- 4219869 Business Flow
34161: -- Populated credit and debit amounts -- Need to generate this within IF
34159: ------------------------------------------------------------------------------------
34160: -- 4219869 Business Flow
34161: -- Populated credit and debit amounts -- Need to generate this within IF
34162: ------------------------------------------------------------------------------------
34163: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34164:
34165: ----------------------------------------------------------------------------------
34166: -- 4219869 Business Flow
34167: -- Update journal entry status -- Need to generate this within IF
34191: -- To allow MPA report to determine if it should generate report process
34192: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34193: ------------------------------------------------------------------------------------------
34194:
34195: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34196: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34197: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34198: -- call ADRs
34199: -- Bug 4922099
34192: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34193: ------------------------------------------------------------------------------------------
34194:
34195: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34196: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34197: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34198: -- call ADRs
34199: -- Bug 4922099
34200: --
34216: , x_value_type_code => l_adr_value_type_code
34217: , p_side => 'NA'
34218: );
34219:
34220: xla_ae_lines_pkg.set_ccid(
34221: p_code_combination_id => l_ccid
34222: , p_value_type_code => l_adr_value_type_code
34223: , p_transaction_coa_id => l_adr_transaction_coa_id
34224: , p_accounting_coa_id => l_adr_accounting_coa_id
34239:
34240: --
34241: -- Update the line information that should be overwritten
34242: --
34243: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34244: p_header_num => 1);
34245: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34246:
34247: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34241: -- Update the line information that should be overwritten
34242: --
34243: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34244: p_header_num => 1);
34245: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34246:
34247: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34248:
34249: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34243: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34244: p_header_num => 1);
34245: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34246:
34247: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34248:
34249: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34250: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34251: END IF;
34246:
34247: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34248:
34249: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34250: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34251: END IF;
34252:
34253: --
34254: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34253: --
34254: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34255: --
34256: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
34257: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
34258: ELSE
34259: ---------------------------------------------------------------------------------------------------
34260: -- 4262811a Switch Sign
34261: ---------------------------------------------------------------------------------------------------
34258: ELSE
34259: ---------------------------------------------------------------------------------------------------
34260: -- 4262811a Switch Sign
34261: ---------------------------------------------------------------------------------------------------
34262: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34264: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34266: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34259: ---------------------------------------------------------------------------------------------------
34260: -- 4262811a Switch Sign
34261: ---------------------------------------------------------------------------------------------------
34262: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34264: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34266: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34267: -- 5132302
34260: -- 4262811a Switch Sign
34261: ---------------------------------------------------------------------------------------------------
34262: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34264: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34266: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34267: -- 5132302
34268: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34261: ---------------------------------------------------------------------------------------------------
34262: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34264: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34266: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34267: -- 5132302
34268: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34269: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34262: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34264: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34266: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34267: -- 5132302
34268: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34269: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34270:
34264: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34266: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34267: -- 5132302
34268: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34269: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34270:
34271: END IF;
34272:
34265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34266: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34267: -- 5132302
34268: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34269: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34270:
34271: END IF;
34272:
34273: -- 4955764
34270:
34271: END IF;
34272:
34273: -- 4955764
34274: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34275: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34276:
34277:
34278: XLA_AE_LINES_PKG.ValidateCurrentLine;
34274: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34275: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34276:
34277:
34278: XLA_AE_LINES_PKG.ValidateCurrentLine;
34279: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34280:
34281: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34282: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34275: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34276:
34277:
34278: XLA_AE_LINES_PKG.ValidateCurrentLine;
34279: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34280:
34281: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34282: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34283: ,p_balance_type_code => l_balance_type_code);
34410: --
34411: -- bulk performance
34412: --
34413: l_balance_type_code VARCHAR2(1);
34414: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
34415: l_log_module VARCHAR2(240);
34416:
34417: --
34418: -- Upgrade strategy
34480: ') = 'N'
34481: THEN
34482:
34483: --
34484: XLA_AE_LINES_PKG.SetNewLine;
34485:
34486: p_balance_type_code := l_balance_type_code;
34487: -- set the flag so later we will know whether the gain loss line needs to be created
34488:
34492:
34493: --
34494: -- bulk performance
34495: --
34496: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
34497: p_header_num => 0); -- 4262811
34498: --
34499: -- set accounting line options
34500: --
34497: p_header_num => 0); -- 4262811
34498: --
34499: -- set accounting line options
34500: --
34501: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
34502: p_natural_side_code => 'C'
34503: , p_gain_or_loss_flag => 'N'
34504: , p_gl_transfer_mode_code => 'S'
34505: , p_acct_entry_type_code => 'A'
34511: --
34512: --
34513: -- set accounting line type info
34514: --
34515: xla_ae_lines_pkg.SetAcctLineType
34516: (p_component_type => l_component_type
34517: ,p_event_type_code => l_event_type_code
34518: ,p_line_definition_owner_code => l_line_definition_owner_code
34519: ,p_line_definition_code => l_line_definition_code
34525: ,p_event_class_code => l_event_class_code);
34526: --
34527: -- set accounting class
34528: --
34529: xla_ae_lines_pkg.SetAcctClass(
34530: p_accounting_class_code => 'TAX'
34531: , p_ae_header_id => l_ae_header_id
34532: );
34533:
34533:
34534: --
34535: -- set rounding class
34536: --
34537: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34538: 'RECEIVABLE';
34539:
34540: --
34541: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34537: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34538: 'RECEIVABLE';
34539:
34540: --
34541: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34542: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34543: --
34544: -- bulk performance
34545: --
34538: 'RECEIVABLE';
34539:
34540: --
34541: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34542: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34543: --
34544: -- bulk performance
34545: --
34546: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34542: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34543: --
34544: -- bulk performance
34545: --
34546: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34547:
34548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34549: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34550:
34544: -- bulk performance
34545: --
34546: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34547:
34548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34549: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34550:
34551: -- 4955764
34552: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34548: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34549: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34550:
34551: -- 4955764
34552: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34553: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
34554:
34555: -- 4458381 Public Sector Enh
34556:
34576: l_rec_acct_attrs.array_char_value(7) := p_source_21;
34577: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
34578: l_rec_acct_attrs.array_num_value(8) := p_source_22;
34579:
34580: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34581: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34582:
34583: ---------------------------------------------------------------------------------------------------------------
34584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34577: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
34578: l_rec_acct_attrs.array_num_value(8) := p_source_22;
34579:
34580: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34581: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34582:
34583: ---------------------------------------------------------------------------------------------------------------
34584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34585: ---------------------------------------------------------------------------------------------------------------
34580: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34581: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34582:
34583: ---------------------------------------------------------------------------------------------------------------
34584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34585: ---------------------------------------------------------------------------------------------------------------
34586: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34587:
34588: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34582:
34583: ---------------------------------------------------------------------------------------------------------------
34584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34585: ---------------------------------------------------------------------------------------------------------------
34586: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34587:
34588: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34589: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34590:
34584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34585: ---------------------------------------------------------------------------------------------------------------
34586: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34587:
34588: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34589: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34590:
34591: IF xla_accounting_cache_pkg.GetValueChar
34592: (p_source_code => 'LEDGER_CATEGORY_CODE'
34585: ---------------------------------------------------------------------------------------------------------------
34586: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34587:
34588: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34589: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34590:
34591: IF xla_accounting_cache_pkg.GetValueChar
34592: (p_source_code => 'LEDGER_CATEGORY_CODE'
34593: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
34596: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
34597: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
34598: )
34599: THEN
34600: xla_ae_lines_pkg.BflowUpgEntry
34601: (p_business_method_code => l_bflow_method_code
34602: ,p_business_class_code => l_bflow_class_code
34603: ,p_balance_type => l_balance_type_code);
34604: ELSE
34636: , x_value_type_code => l_adr_value_type_code
34637: , p_side => 'NA'
34638: );
34639:
34640: xla_ae_lines_pkg.set_ccid(
34641: p_code_combination_id => l_ccid
34642: , p_value_type_code => l_adr_value_type_code
34643: , p_transaction_coa_id => l_adr_transaction_coa_id
34644: , p_accounting_coa_id => l_adr_accounting_coa_id
34672: xla_accounting_err_pkg.build_message
34673: (p_appli_s_name => 'XLA'
34674: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
34675: ,p_token_1 => 'LINE_NUMBER'
34676: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
34677: ,p_token_2 => 'LINE_TYPE_NAME'
34678: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
34679: l_component_type
34680: ,l_component_code
34708: --
34709: --
34710: ------------------------------------------------------------------------------------------------
34711: -- 4219869 Business Flow
34712: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34713: -- Prior Entry. Currently, the following code is always generated.
34714: ------------------------------------------------------------------------------------------------
34715: XLA_AE_LINES_PKG.ValidateCurrentLine;
34716:
34711: -- 4219869 Business Flow
34712: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34713: -- Prior Entry. Currently, the following code is always generated.
34714: ------------------------------------------------------------------------------------------------
34715: XLA_AE_LINES_PKG.ValidateCurrentLine;
34716:
34717: ------------------------------------------------------------------------------------
34718: -- 4219869 Business Flow
34719: -- Populated credit and debit amounts -- Need to generate this within IF
34717: ------------------------------------------------------------------------------------
34718: -- 4219869 Business Flow
34719: -- Populated credit and debit amounts -- Need to generate this within IF
34720: ------------------------------------------------------------------------------------
34721: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34722:
34723: ----------------------------------------------------------------------------------
34724: -- 4219869 Business Flow
34725: -- Update journal entry status -- Need to generate this within IF
34749: -- To allow MPA report to determine if it should generate report process
34750: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34751: ------------------------------------------------------------------------------------------
34752:
34753: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34754: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34755: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34756: -- call ADRs
34757: -- Bug 4922099
34750: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34751: ------------------------------------------------------------------------------------------
34752:
34753: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34754: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34755: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34756: -- call ADRs
34757: -- Bug 4922099
34758: --
34774: , x_value_type_code => l_adr_value_type_code
34775: , p_side => 'NA'
34776: );
34777:
34778: xla_ae_lines_pkg.set_ccid(
34779: p_code_combination_id => l_ccid
34780: , p_value_type_code => l_adr_value_type_code
34781: , p_transaction_coa_id => l_adr_transaction_coa_id
34782: , p_accounting_coa_id => l_adr_accounting_coa_id
34797:
34798: --
34799: -- Update the line information that should be overwritten
34800: --
34801: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34802: p_header_num => 1);
34803: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34804:
34805: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34799: -- Update the line information that should be overwritten
34800: --
34801: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34802: p_header_num => 1);
34803: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34804:
34805: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34806:
34807: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34801: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34802: p_header_num => 1);
34803: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34804:
34805: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34806:
34807: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34808: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34809: END IF;
34804:
34805: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34806:
34807: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34808: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34809: END IF;
34810:
34811: --
34812: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34811: --
34812: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34813: --
34814: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
34815: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
34816: ELSE
34817: ---------------------------------------------------------------------------------------------------
34818: -- 4262811a Switch Sign
34819: ---------------------------------------------------------------------------------------------------
34816: ELSE
34817: ---------------------------------------------------------------------------------------------------
34818: -- 4262811a Switch Sign
34819: ---------------------------------------------------------------------------------------------------
34820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34817: ---------------------------------------------------------------------------------------------------
34818: -- 4262811a Switch Sign
34819: ---------------------------------------------------------------------------------------------------
34820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34825: -- 5132302
34818: -- 4262811a Switch Sign
34819: ---------------------------------------------------------------------------------------------------
34820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34825: -- 5132302
34826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34819: ---------------------------------------------------------------------------------------------------
34820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34825: -- 5132302
34826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34827: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34825: -- 5132302
34826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34827: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34828:
34822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34825: -- 5132302
34826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34827: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34828:
34829: END IF;
34830:
34823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34825: -- 5132302
34826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34827: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34828:
34829: END IF;
34830:
34831: -- 4955764
34828:
34829: END IF;
34830:
34831: -- 4955764
34832: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34833: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34834:
34835:
34836: XLA_AE_LINES_PKG.ValidateCurrentLine;
34832: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34833: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34834:
34835:
34836: XLA_AE_LINES_PKG.ValidateCurrentLine;
34837: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34838:
34839: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34840: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34833: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34834:
34835:
34836: XLA_AE_LINES_PKG.ValidateCurrentLine;
34837: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34838:
34839: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34840: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34841: ,p_balance_type_code => l_balance_type_code);
34984: --
34985: -- bulk performance
34986: --
34987: l_balance_type_code VARCHAR2(1);
34988: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
34989: l_log_module VARCHAR2(240);
34990:
34991: --
34992: -- Upgrade strategy
35054: ') = 'N'
35055: THEN
35056:
35057: --
35058: XLA_AE_LINES_PKG.SetNewLine;
35059:
35060: p_balance_type_code := l_balance_type_code;
35061: -- set the flag so later we will know whether the gain loss line needs to be created
35062:
35066:
35067: --
35068: -- bulk performance
35069: --
35070: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
35071: p_header_num => 0); -- 4262811
35072: --
35073: -- set accounting line options
35074: --
35071: p_header_num => 0); -- 4262811
35072: --
35073: -- set accounting line options
35074: --
35075: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
35076: p_natural_side_code => 'C'
35077: , p_gain_or_loss_flag => 'N'
35078: , p_gl_transfer_mode_code => 'S'
35079: , p_acct_entry_type_code => 'A'
35085: --
35086: --
35087: -- set accounting line type info
35088: --
35089: xla_ae_lines_pkg.SetAcctLineType
35090: (p_component_type => l_component_type
35091: ,p_event_type_code => l_event_type_code
35092: ,p_line_definition_owner_code => l_line_definition_owner_code
35093: ,p_line_definition_code => l_line_definition_code
35099: ,p_event_class_code => l_event_class_code);
35100: --
35101: -- set accounting class
35102: --
35103: xla_ae_lines_pkg.SetAcctClass(
35104: p_accounting_class_code => 'ACC'
35105: , p_ae_header_id => l_ae_header_id
35106: );
35107:
35107:
35108: --
35109: -- set rounding class
35110: --
35111: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35112: 'RECEIVABLE';
35113:
35114: --
35115: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35111: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35112: 'RECEIVABLE';
35113:
35114: --
35115: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35116: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35117: --
35118: -- bulk performance
35119: --
35112: 'RECEIVABLE';
35113:
35114: --
35115: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35116: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35117: --
35118: -- bulk performance
35119: --
35120: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35116: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35117: --
35118: -- bulk performance
35119: --
35120: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35121:
35122: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35123: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35124:
35118: -- bulk performance
35119: --
35120: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35121:
35122: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35123: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35124:
35125: -- 4955764
35126: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35122: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35123: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35124:
35125: -- 4955764
35126: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35127: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
35128:
35129: -- 4458381 Public Sector Enh
35130:
35166: l_rec_acct_attrs.array_num_value(15) := p_source_63;
35167: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35168: l_rec_acct_attrs.array_char_value(16) := p_source_64;
35169:
35170: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35171: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35172:
35173: ---------------------------------------------------------------------------------------------------------------
35174: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35167: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35168: l_rec_acct_attrs.array_char_value(16) := p_source_64;
35169:
35170: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35171: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35172:
35173: ---------------------------------------------------------------------------------------------------------------
35174: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35175: ---------------------------------------------------------------------------------------------------------------
35170: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35171: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35172:
35173: ---------------------------------------------------------------------------------------------------------------
35174: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35175: ---------------------------------------------------------------------------------------------------------------
35176: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35177:
35178: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35172:
35173: ---------------------------------------------------------------------------------------------------------------
35174: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35175: ---------------------------------------------------------------------------------------------------------------
35176: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35177:
35178: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35179: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35180:
35174: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35175: ---------------------------------------------------------------------------------------------------------------
35176: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35177:
35178: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35179: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35180:
35181: IF xla_accounting_cache_pkg.GetValueChar
35182: (p_source_code => 'LEDGER_CATEGORY_CODE'
35175: ---------------------------------------------------------------------------------------------------------------
35176: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35177:
35178: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35179: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35180:
35181: IF xla_accounting_cache_pkg.GetValueChar
35182: (p_source_code => 'LEDGER_CATEGORY_CODE'
35183: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
35186: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
35187: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
35188: )
35189: THEN
35190: xla_ae_lines_pkg.BflowUpgEntry
35191: (p_business_method_code => l_bflow_method_code
35192: ,p_business_class_code => l_bflow_class_code
35193: ,p_balance_type => l_balance_type_code);
35194: ELSE
35226: , x_value_type_code => l_adr_value_type_code
35227: , p_side => 'NA'
35228: );
35229:
35230: xla_ae_lines_pkg.set_ccid(
35231: p_code_combination_id => l_ccid
35232: , p_value_type_code => l_adr_value_type_code
35233: , p_transaction_coa_id => l_adr_transaction_coa_id
35234: , p_accounting_coa_id => l_adr_accounting_coa_id
35262: xla_accounting_err_pkg.build_message
35263: (p_appli_s_name => 'XLA'
35264: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
35265: ,p_token_1 => 'LINE_NUMBER'
35266: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
35267: ,p_token_2 => 'LINE_TYPE_NAME'
35268: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
35269: l_component_type
35270: ,l_component_code
35298: --
35299: --
35300: ------------------------------------------------------------------------------------------------
35301: -- 4219869 Business Flow
35302: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35303: -- Prior Entry. Currently, the following code is always generated.
35304: ------------------------------------------------------------------------------------------------
35305: XLA_AE_LINES_PKG.ValidateCurrentLine;
35306:
35301: -- 4219869 Business Flow
35302: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35303: -- Prior Entry. Currently, the following code is always generated.
35304: ------------------------------------------------------------------------------------------------
35305: XLA_AE_LINES_PKG.ValidateCurrentLine;
35306:
35307: ------------------------------------------------------------------------------------
35308: -- 4219869 Business Flow
35309: -- Populated credit and debit amounts -- Need to generate this within IF
35307: ------------------------------------------------------------------------------------
35308: -- 4219869 Business Flow
35309: -- Populated credit and debit amounts -- Need to generate this within IF
35310: ------------------------------------------------------------------------------------
35311: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35312:
35313: ----------------------------------------------------------------------------------
35314: -- 4219869 Business Flow
35315: -- Update journal entry status -- Need to generate this within IF
35339: -- To allow MPA report to determine if it should generate report process
35340: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35341: ------------------------------------------------------------------------------------------
35342:
35343: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35344: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35345: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35346: -- call ADRs
35347: -- Bug 4922099
35340: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35341: ------------------------------------------------------------------------------------------
35342:
35343: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35344: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35345: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35346: -- call ADRs
35347: -- Bug 4922099
35348: --
35364: , x_value_type_code => l_adr_value_type_code
35365: , p_side => 'NA'
35366: );
35367:
35368: xla_ae_lines_pkg.set_ccid(
35369: p_code_combination_id => l_ccid
35370: , p_value_type_code => l_adr_value_type_code
35371: , p_transaction_coa_id => l_adr_transaction_coa_id
35372: , p_accounting_coa_id => l_adr_accounting_coa_id
35387:
35388: --
35389: -- Update the line information that should be overwritten
35390: --
35391: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35392: p_header_num => 1);
35393: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35394:
35395: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35389: -- Update the line information that should be overwritten
35390: --
35391: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35392: p_header_num => 1);
35393: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35394:
35395: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35396:
35397: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35391: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35392: p_header_num => 1);
35393: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35394:
35395: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35396:
35397: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35398: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35399: END IF;
35394:
35395: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35396:
35397: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35398: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35399: END IF;
35400:
35401: --
35402: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35401: --
35402: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35403: --
35404: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
35405: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
35406: ELSE
35407: ---------------------------------------------------------------------------------------------------
35408: -- 4262811a Switch Sign
35409: ---------------------------------------------------------------------------------------------------
35406: ELSE
35407: ---------------------------------------------------------------------------------------------------
35408: -- 4262811a Switch Sign
35409: ---------------------------------------------------------------------------------------------------
35410: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35407: ---------------------------------------------------------------------------------------------------
35408: -- 4262811a Switch Sign
35409: ---------------------------------------------------------------------------------------------------
35410: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35415: -- 5132302
35408: -- 4262811a Switch Sign
35409: ---------------------------------------------------------------------------------------------------
35410: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35415: -- 5132302
35416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35409: ---------------------------------------------------------------------------------------------------
35410: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35415: -- 5132302
35416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35410: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35415: -- 5132302
35416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35418:
35412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35415: -- 5132302
35416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35418:
35419: END IF;
35420:
35413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35415: -- 5132302
35416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35418:
35419: END IF;
35420:
35421: -- 4955764
35418:
35419: END IF;
35420:
35421: -- 4955764
35422: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35423: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35424:
35425:
35426: XLA_AE_LINES_PKG.ValidateCurrentLine;
35422: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35423: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35424:
35425:
35426: XLA_AE_LINES_PKG.ValidateCurrentLine;
35427: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35428:
35429: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35430: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35423: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35424:
35425:
35426: XLA_AE_LINES_PKG.ValidateCurrentLine;
35427: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35428:
35429: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35430: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35431: ,p_balance_type_code => l_balance_type_code);
35582: --
35583: -- bulk performance
35584: --
35585: l_balance_type_code VARCHAR2(1);
35586: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
35587: l_log_module VARCHAR2(240);
35588:
35589: --
35590: -- Upgrade strategy
35666: ') = 'N'
35667: THEN
35668:
35669: --
35670: XLA_AE_LINES_PKG.SetNewLine;
35671:
35672: p_balance_type_code := l_balance_type_code;
35673: -- set the flag so later we will know whether the gain loss line needs to be created
35674:
35678:
35679: --
35680: -- bulk performance
35681: --
35682: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
35683: p_header_num => 0); -- 4262811
35684: --
35685: -- set accounting line options
35686: --
35683: p_header_num => 0); -- 4262811
35684: --
35685: -- set accounting line options
35686: --
35687: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
35688: p_natural_side_code => 'D'
35689: , p_gain_or_loss_flag => 'N'
35690: , p_gl_transfer_mode_code => 'S'
35691: , p_acct_entry_type_code => 'A'
35697: --
35698: --
35699: -- set accounting line type info
35700: --
35701: xla_ae_lines_pkg.SetAcctLineType
35702: (p_component_type => l_component_type
35703: ,p_event_type_code => l_event_type_code
35704: ,p_line_definition_owner_code => l_line_definition_owner_code
35705: ,p_line_definition_code => l_line_definition_code
35711: ,p_event_class_code => l_event_class_code);
35712: --
35713: -- set accounting class
35714: --
35715: xla_ae_lines_pkg.SetAcctClass(
35716: p_accounting_class_code => 'CASH'
35717: , p_ae_header_id => l_ae_header_id
35718: );
35719:
35719:
35720: --
35721: -- set rounding class
35722: --
35723: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35724: 'RECEIVABLE';
35725:
35726: --
35727: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35723: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35724: 'RECEIVABLE';
35725:
35726: --
35727: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35728: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35729: --
35730: -- bulk performance
35731: --
35724: 'RECEIVABLE';
35725:
35726: --
35727: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35728: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35729: --
35730: -- bulk performance
35731: --
35732: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35728: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35729: --
35730: -- bulk performance
35731: --
35732: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35733:
35734: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35735: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35736:
35730: -- bulk performance
35731: --
35732: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35733:
35734: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35735: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35736:
35737: -- 4955764
35738: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35734: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35735: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35736:
35737: -- 4955764
35738: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35739: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
35740:
35741: -- 4458381 Public Sector Enh
35742:
35778: l_rec_acct_attrs.array_num_value(15) := p_source_63;
35779: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35780: l_rec_acct_attrs.array_char_value(16) := p_source_64;
35781:
35782: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35783: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35784:
35785: ---------------------------------------------------------------------------------------------------------------
35786: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35779: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35780: l_rec_acct_attrs.array_char_value(16) := p_source_64;
35781:
35782: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35783: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35784:
35785: ---------------------------------------------------------------------------------------------------------------
35786: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35787: ---------------------------------------------------------------------------------------------------------------
35782: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35783: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35784:
35785: ---------------------------------------------------------------------------------------------------------------
35786: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35787: ---------------------------------------------------------------------------------------------------------------
35788: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35789:
35790: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35784:
35785: ---------------------------------------------------------------------------------------------------------------
35786: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35787: ---------------------------------------------------------------------------------------------------------------
35788: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35789:
35790: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35791: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35792:
35786: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35787: ---------------------------------------------------------------------------------------------------------------
35788: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35789:
35790: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35791: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35792:
35793: IF xla_accounting_cache_pkg.GetValueChar
35794: (p_source_code => 'LEDGER_CATEGORY_CODE'
35787: ---------------------------------------------------------------------------------------------------------------
35788: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35789:
35790: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35791: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35792:
35793: IF xla_accounting_cache_pkg.GetValueChar
35794: (p_source_code => 'LEDGER_CATEGORY_CODE'
35795: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
35798: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
35799: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
35800: )
35801: THEN
35802: xla_ae_lines_pkg.BflowUpgEntry
35803: (p_business_method_code => l_bflow_method_code
35804: ,p_business_class_code => l_bflow_class_code
35805: ,p_balance_type => l_balance_type_code);
35806: ELSE
35815: --
35816: -- call description
35817: --
35818:
35819: xla_ae_lines_pkg.SetLineDescription(
35820: p_ae_header_id => l_ae_header_id
35821: ,p_description => Description_1 (
35822: p_application_id => p_application_id
35823: , p_ae_header_id => l_ae_header_id
35847: , x_value_type_code => l_adr_value_type_code
35848: , p_side => 'NA'
35849: );
35850:
35851: xla_ae_lines_pkg.set_ccid(
35852: p_code_combination_id => l_ccid
35853: , p_value_type_code => l_adr_value_type_code
35854: , p_transaction_coa_id => l_adr_transaction_coa_id
35855: , p_accounting_coa_id => l_adr_accounting_coa_id
35880: );
35881:
35882: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
35883:
35884: xla_ae_lines_pkg.set_segment(
35885: p_to_segment_code => 'GL_BALANCING'
35886: , p_segment_value => l_segment
35887: , p_from_segment_code => l_adr_value_segment_code
35888: , p_from_combination_id => l_adr_value_combination_id
35924: xla_accounting_err_pkg.build_message
35925: (p_appli_s_name => 'XLA'
35926: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
35927: ,p_token_1 => 'LINE_NUMBER'
35928: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
35929: ,p_token_2 => 'LINE_TYPE_NAME'
35930: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
35931: l_component_type
35932: ,l_component_code
35960: --
35961: --
35962: ------------------------------------------------------------------------------------------------
35963: -- 4219869 Business Flow
35964: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35965: -- Prior Entry. Currently, the following code is always generated.
35966: ------------------------------------------------------------------------------------------------
35967: XLA_AE_LINES_PKG.ValidateCurrentLine;
35968:
35963: -- 4219869 Business Flow
35964: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35965: -- Prior Entry. Currently, the following code is always generated.
35966: ------------------------------------------------------------------------------------------------
35967: XLA_AE_LINES_PKG.ValidateCurrentLine;
35968:
35969: ------------------------------------------------------------------------------------
35970: -- 4219869 Business Flow
35971: -- Populated credit and debit amounts -- Need to generate this within IF
35969: ------------------------------------------------------------------------------------
35970: -- 4219869 Business Flow
35971: -- Populated credit and debit amounts -- Need to generate this within IF
35972: ------------------------------------------------------------------------------------
35973: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35974:
35975: ----------------------------------------------------------------------------------
35976: -- 4219869 Business Flow
35977: -- Update journal entry status -- Need to generate this within IF
36001: -- To allow MPA report to determine if it should generate report process
36002: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36003: ------------------------------------------------------------------------------------------
36004:
36005: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36006: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36007: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36008: -- call ADRs
36009: -- Bug 4922099
36002: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36003: ------------------------------------------------------------------------------------------
36004:
36005: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36006: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36007: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36008: -- call ADRs
36009: -- Bug 4922099
36010: --
36026: , x_value_type_code => l_adr_value_type_code
36027: , p_side => 'NA'
36028: );
36029:
36030: xla_ae_lines_pkg.set_ccid(
36031: p_code_combination_id => l_ccid
36032: , p_value_type_code => l_adr_value_type_code
36033: , p_transaction_coa_id => l_adr_transaction_coa_id
36034: , p_accounting_coa_id => l_adr_accounting_coa_id
36059: );
36060:
36061: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
36062:
36063: xla_ae_lines_pkg.set_segment(
36064: p_to_segment_code => 'GL_BALANCING'
36065: , p_segment_value => l_segment
36066: , p_from_segment_code => l_adr_value_segment_code
36067: , p_from_combination_id => l_adr_value_combination_id
36090:
36091: --
36092: -- Update the line information that should be overwritten
36093: --
36094: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36095: p_header_num => 1);
36096: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36097:
36098: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36092: -- Update the line information that should be overwritten
36093: --
36094: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36095: p_header_num => 1);
36096: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36097:
36098: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36099:
36100: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36094: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36095: p_header_num => 1);
36096: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36097:
36098: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36099:
36100: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36101: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36102: END IF;
36097:
36098: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36099:
36100: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36101: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36102: END IF;
36103:
36104: --
36105: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36104: --
36105: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36106: --
36107: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
36108: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
36109: ELSE
36110: ---------------------------------------------------------------------------------------------------
36111: -- 4262811a Switch Sign
36112: ---------------------------------------------------------------------------------------------------
36109: ELSE
36110: ---------------------------------------------------------------------------------------------------
36111: -- 4262811a Switch Sign
36112: ---------------------------------------------------------------------------------------------------
36113: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36114: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36116: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36110: ---------------------------------------------------------------------------------------------------
36111: -- 4262811a Switch Sign
36112: ---------------------------------------------------------------------------------------------------
36113: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36114: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36116: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36118: -- 5132302
36111: -- 4262811a Switch Sign
36112: ---------------------------------------------------------------------------------------------------
36113: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36114: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36116: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36118: -- 5132302
36119: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36112: ---------------------------------------------------------------------------------------------------
36113: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36114: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36116: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36118: -- 5132302
36119: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36120: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36113: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36114: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36116: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36118: -- 5132302
36119: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36120: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36121:
36115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36116: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36118: -- 5132302
36119: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36120: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36121:
36122: END IF;
36123:
36116: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36118: -- 5132302
36119: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36120: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36121:
36122: END IF;
36123:
36124: -- 4955764
36121:
36122: END IF;
36123:
36124: -- 4955764
36125: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36126: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36127:
36128:
36129: XLA_AE_LINES_PKG.ValidateCurrentLine;
36125: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36126: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36127:
36128:
36129: XLA_AE_LINES_PKG.ValidateCurrentLine;
36130: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36131:
36132: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36133: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36126: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36127:
36128:
36129: XLA_AE_LINES_PKG.ValidateCurrentLine;
36130: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36131:
36132: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36133: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36134: ,p_balance_type_code => l_balance_type_code);
36281: --
36282: -- bulk performance
36283: --
36284: l_balance_type_code VARCHAR2(1);
36285: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
36286: l_log_module VARCHAR2(240);
36287:
36288: --
36289: -- Upgrade strategy
36353: ') = 'Y'
36354: THEN
36355:
36356: --
36357: XLA_AE_LINES_PKG.SetNewLine;
36358:
36359: p_balance_type_code := l_balance_type_code;
36360: -- set the flag so later we will know whether the gain loss line needs to be created
36361:
36365:
36366: --
36367: -- bulk performance
36368: --
36369: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
36370: p_header_num => 0); -- 4262811
36371: --
36372: -- set accounting line options
36373: --
36370: p_header_num => 0); -- 4262811
36371: --
36372: -- set accounting line options
36373: --
36374: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
36375: p_natural_side_code => 'C'
36376: , p_gain_or_loss_flag => 'N'
36377: , p_gl_transfer_mode_code => 'S'
36378: , p_acct_entry_type_code => 'A'
36384: --
36385: --
36386: -- set accounting line type info
36387: --
36388: xla_ae_lines_pkg.SetAcctLineType
36389: (p_component_type => l_component_type
36390: ,p_event_type_code => l_event_type_code
36391: ,p_line_definition_owner_code => l_line_definition_owner_code
36392: ,p_line_definition_code => l_line_definition_code
36398: ,p_event_class_code => l_event_class_code);
36399: --
36400: -- set accounting class
36401: --
36402: xla_ae_lines_pkg.SetAcctClass(
36403: p_accounting_class_code => 'CASH'
36404: , p_ae_header_id => l_ae_header_id
36405: );
36406:
36406:
36407: --
36408: -- set rounding class
36409: --
36410: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36411: 'RECEIVABLE';
36412:
36413: --
36414: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36410: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36411: 'RECEIVABLE';
36412:
36413: --
36414: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36415: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36416: --
36417: -- bulk performance
36418: --
36411: 'RECEIVABLE';
36412:
36413: --
36414: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36415: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36416: --
36417: -- bulk performance
36418: --
36419: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36415: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36416: --
36417: -- bulk performance
36418: --
36419: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36420:
36421: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36422: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36423:
36417: -- bulk performance
36418: --
36419: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36420:
36421: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36422: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36423:
36424: -- 4955764
36425: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36421: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36422: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36423:
36424: -- 4955764
36425: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36426: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
36427:
36428: -- 4458381 Public Sector Enh
36429:
36465: l_rec_acct_attrs.array_num_value(15) := p_source_63;
36466: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
36467: l_rec_acct_attrs.array_char_value(16) := p_source_64;
36468:
36469: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36470: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36471:
36472: ---------------------------------------------------------------------------------------------------------------
36473: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36466: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
36467: l_rec_acct_attrs.array_char_value(16) := p_source_64;
36468:
36469: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36470: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36471:
36472: ---------------------------------------------------------------------------------------------------------------
36473: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36474: ---------------------------------------------------------------------------------------------------------------
36469: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36470: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36471:
36472: ---------------------------------------------------------------------------------------------------------------
36473: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36474: ---------------------------------------------------------------------------------------------------------------
36475: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36476:
36477: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36471:
36472: ---------------------------------------------------------------------------------------------------------------
36473: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36474: ---------------------------------------------------------------------------------------------------------------
36475: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36476:
36477: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36478: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36479:
36473: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36474: ---------------------------------------------------------------------------------------------------------------
36475: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36476:
36477: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36478: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36479:
36480: IF xla_accounting_cache_pkg.GetValueChar
36481: (p_source_code => 'LEDGER_CATEGORY_CODE'
36474: ---------------------------------------------------------------------------------------------------------------
36475: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36476:
36477: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36478: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36479:
36480: IF xla_accounting_cache_pkg.GetValueChar
36481: (p_source_code => 'LEDGER_CATEGORY_CODE'
36482: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
36485: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
36486: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
36487: )
36488: THEN
36489: xla_ae_lines_pkg.BflowUpgEntry
36490: (p_business_method_code => l_bflow_method_code
36491: ,p_business_class_code => l_bflow_class_code
36492: ,p_balance_type => l_balance_type_code);
36493: ELSE
36502: --
36503: -- call description
36504: --
36505:
36506: xla_ae_lines_pkg.SetLineDescription(
36507: p_ae_header_id => l_ae_header_id
36508: ,p_description => Description_1 (
36509: p_application_id => p_application_id
36510: , p_ae_header_id => l_ae_header_id
36534: , x_value_type_code => l_adr_value_type_code
36535: , p_side => 'NA'
36536: );
36537:
36538: xla_ae_lines_pkg.set_ccid(
36539: p_code_combination_id => l_ccid
36540: , p_value_type_code => l_adr_value_type_code
36541: , p_transaction_coa_id => l_adr_transaction_coa_id
36542: , p_accounting_coa_id => l_adr_accounting_coa_id
36567: );
36568:
36569: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
36570:
36571: xla_ae_lines_pkg.set_segment(
36572: p_to_segment_code => 'GL_BALANCING'
36573: , p_segment_value => l_segment
36574: , p_from_segment_code => l_adr_value_segment_code
36575: , p_from_combination_id => l_adr_value_combination_id
36611: xla_accounting_err_pkg.build_message
36612: (p_appli_s_name => 'XLA'
36613: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
36614: ,p_token_1 => 'LINE_NUMBER'
36615: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
36616: ,p_token_2 => 'LINE_TYPE_NAME'
36617: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
36618: l_component_type
36619: ,l_component_code
36647: --
36648: --
36649: ------------------------------------------------------------------------------------------------
36650: -- 4219869 Business Flow
36651: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36652: -- Prior Entry. Currently, the following code is always generated.
36653: ------------------------------------------------------------------------------------------------
36654: XLA_AE_LINES_PKG.ValidateCurrentLine;
36655:
36650: -- 4219869 Business Flow
36651: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36652: -- Prior Entry. Currently, the following code is always generated.
36653: ------------------------------------------------------------------------------------------------
36654: XLA_AE_LINES_PKG.ValidateCurrentLine;
36655:
36656: ------------------------------------------------------------------------------------
36657: -- 4219869 Business Flow
36658: -- Populated credit and debit amounts -- Need to generate this within IF
36656: ------------------------------------------------------------------------------------
36657: -- 4219869 Business Flow
36658: -- Populated credit and debit amounts -- Need to generate this within IF
36659: ------------------------------------------------------------------------------------
36660: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36661:
36662: ----------------------------------------------------------------------------------
36663: -- 4219869 Business Flow
36664: -- Update journal entry status -- Need to generate this within IF
36688: -- To allow MPA report to determine if it should generate report process
36689: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36690: ------------------------------------------------------------------------------------------
36691:
36692: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36693: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36694: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36695: -- call ADRs
36696: -- Bug 4922099
36689: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36690: ------------------------------------------------------------------------------------------
36691:
36692: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36693: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36694: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36695: -- call ADRs
36696: -- Bug 4922099
36697: --
36713: , x_value_type_code => l_adr_value_type_code
36714: , p_side => 'NA'
36715: );
36716:
36717: xla_ae_lines_pkg.set_ccid(
36718: p_code_combination_id => l_ccid
36719: , p_value_type_code => l_adr_value_type_code
36720: , p_transaction_coa_id => l_adr_transaction_coa_id
36721: , p_accounting_coa_id => l_adr_accounting_coa_id
36746: );
36747:
36748: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
36749:
36750: xla_ae_lines_pkg.set_segment(
36751: p_to_segment_code => 'GL_BALANCING'
36752: , p_segment_value => l_segment
36753: , p_from_segment_code => l_adr_value_segment_code
36754: , p_from_combination_id => l_adr_value_combination_id
36777:
36778: --
36779: -- Update the line information that should be overwritten
36780: --
36781: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36782: p_header_num => 1);
36783: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36784:
36785: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36779: -- Update the line information that should be overwritten
36780: --
36781: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36782: p_header_num => 1);
36783: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36784:
36785: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36786:
36787: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36781: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36782: p_header_num => 1);
36783: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36784:
36785: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36786:
36787: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36788: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36789: END IF;
36784:
36785: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36786:
36787: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36788: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36789: END IF;
36790:
36791: --
36792: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36791: --
36792: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36793: --
36794: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
36795: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
36796: ELSE
36797: ---------------------------------------------------------------------------------------------------
36798: -- 4262811a Switch Sign
36799: ---------------------------------------------------------------------------------------------------
36796: ELSE
36797: ---------------------------------------------------------------------------------------------------
36798: -- 4262811a Switch Sign
36799: ---------------------------------------------------------------------------------------------------
36800: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36801: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36803: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36797: ---------------------------------------------------------------------------------------------------
36798: -- 4262811a Switch Sign
36799: ---------------------------------------------------------------------------------------------------
36800: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36801: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36803: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36805: -- 5132302
36798: -- 4262811a Switch Sign
36799: ---------------------------------------------------------------------------------------------------
36800: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36801: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36803: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36805: -- 5132302
36806: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36799: ---------------------------------------------------------------------------------------------------
36800: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36801: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36803: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36805: -- 5132302
36806: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36807: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36800: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36801: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36803: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36805: -- 5132302
36806: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36807: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36808:
36802: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36803: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36805: -- 5132302
36806: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36807: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36808:
36809: END IF;
36810:
36803: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36804: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36805: -- 5132302
36806: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36807: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36808:
36809: END IF;
36810:
36811: -- 4955764
36808:
36809: END IF;
36810:
36811: -- 4955764
36812: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36813: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36814:
36815:
36816: XLA_AE_LINES_PKG.ValidateCurrentLine;
36812: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36813: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36814:
36815:
36816: XLA_AE_LINES_PKG.ValidateCurrentLine;
36817: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36818:
36819: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36820: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36813: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36814:
36815:
36816: XLA_AE_LINES_PKG.ValidateCurrentLine;
36817: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36818:
36819: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36820: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36821: ,p_balance_type_code => l_balance_type_code);
36966: --
36967: -- bulk performance
36968: --
36969: l_balance_type_code VARCHAR2(1);
36970: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
36971: l_log_module VARCHAR2(240);
36972:
36973: --
36974: -- Upgrade strategy
37036: ') = 'Y'
37037: THEN
37038:
37039: --
37040: XLA_AE_LINES_PKG.SetNewLine;
37041:
37042: p_balance_type_code := l_balance_type_code;
37043: -- set the flag so later we will know whether the gain loss line needs to be created
37044:
37048:
37049: --
37050: -- bulk performance
37051: --
37052: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
37053: p_header_num => 0); -- 4262811
37054: --
37055: -- set accounting line options
37056: --
37053: p_header_num => 0); -- 4262811
37054: --
37055: -- set accounting line options
37056: --
37057: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
37058: p_natural_side_code => 'C'
37059: , p_gain_or_loss_flag => 'N'
37060: , p_gl_transfer_mode_code => 'S'
37061: , p_acct_entry_type_code => 'A'
37067: --
37068: --
37069: -- set accounting line type info
37070: --
37071: xla_ae_lines_pkg.SetAcctLineType
37072: (p_component_type => l_component_type
37073: ,p_event_type_code => l_event_type_code
37074: ,p_line_definition_owner_code => l_line_definition_owner_code
37075: ,p_line_definition_code => l_line_definition_code
37081: ,p_event_class_code => l_event_class_code);
37082: --
37083: -- set accounting class
37084: --
37085: xla_ae_lines_pkg.SetAcctClass(
37086: p_accounting_class_code => 'CONFIRMATION'
37087: , p_ae_header_id => l_ae_header_id
37088: );
37089:
37089:
37090: --
37091: -- set rounding class
37092: --
37093: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37094: 'RECEIVABLE';
37095:
37096: --
37097: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37093: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37094: 'RECEIVABLE';
37095:
37096: --
37097: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37098: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37099: --
37100: -- bulk performance
37101: --
37094: 'RECEIVABLE';
37095:
37096: --
37097: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37098: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37099: --
37100: -- bulk performance
37101: --
37102: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37098: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37099: --
37100: -- bulk performance
37101: --
37102: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37103:
37104: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37105: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37106:
37100: -- bulk performance
37101: --
37102: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37103:
37104: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37105: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37106:
37107: -- 4955764
37108: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37104: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37105: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37106:
37107: -- 4955764
37108: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37109: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
37110:
37111: -- 4458381 Public Sector Enh
37112:
37148: l_rec_acct_attrs.array_num_value(15) := p_source_63;
37149: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
37150: l_rec_acct_attrs.array_char_value(16) := p_source_64;
37151:
37152: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37153: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37154:
37155: ---------------------------------------------------------------------------------------------------------------
37156: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37149: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
37150: l_rec_acct_attrs.array_char_value(16) := p_source_64;
37151:
37152: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37153: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37154:
37155: ---------------------------------------------------------------------------------------------------------------
37156: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37157: ---------------------------------------------------------------------------------------------------------------
37152: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37153: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37154:
37155: ---------------------------------------------------------------------------------------------------------------
37156: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37157: ---------------------------------------------------------------------------------------------------------------
37158: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37159:
37160: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37154:
37155: ---------------------------------------------------------------------------------------------------------------
37156: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37157: ---------------------------------------------------------------------------------------------------------------
37158: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37159:
37160: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37161: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37162:
37156: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37157: ---------------------------------------------------------------------------------------------------------------
37158: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37159:
37160: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37161: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37162:
37163: IF xla_accounting_cache_pkg.GetValueChar
37164: (p_source_code => 'LEDGER_CATEGORY_CODE'
37157: ---------------------------------------------------------------------------------------------------------------
37158: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37159:
37160: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37161: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37162:
37163: IF xla_accounting_cache_pkg.GetValueChar
37164: (p_source_code => 'LEDGER_CATEGORY_CODE'
37165: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
37168: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
37169: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
37170: )
37171: THEN
37172: xla_ae_lines_pkg.BflowUpgEntry
37173: (p_business_method_code => l_bflow_method_code
37174: ,p_business_class_code => l_bflow_class_code
37175: ,p_balance_type => l_balance_type_code);
37176: ELSE
37185: --
37186: -- call description
37187: --
37188:
37189: xla_ae_lines_pkg.SetLineDescription(
37190: p_ae_header_id => l_ae_header_id
37191: ,p_description => Description_1 (
37192: p_application_id => p_application_id
37193: , p_ae_header_id => l_ae_header_id
37217: , x_value_type_code => l_adr_value_type_code
37218: , p_side => 'NA'
37219: );
37220:
37221: xla_ae_lines_pkg.set_ccid(
37222: p_code_combination_id => l_ccid
37223: , p_value_type_code => l_adr_value_type_code
37224: , p_transaction_coa_id => l_adr_transaction_coa_id
37225: , p_accounting_coa_id => l_adr_accounting_coa_id
37250: );
37251:
37252: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
37253:
37254: xla_ae_lines_pkg.set_segment(
37255: p_to_segment_code => 'GL_BALANCING'
37256: , p_segment_value => l_segment
37257: , p_from_segment_code => l_adr_value_segment_code
37258: , p_from_combination_id => l_adr_value_combination_id
37294: xla_accounting_err_pkg.build_message
37295: (p_appli_s_name => 'XLA'
37296: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
37297: ,p_token_1 => 'LINE_NUMBER'
37298: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
37299: ,p_token_2 => 'LINE_TYPE_NAME'
37300: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
37301: l_component_type
37302: ,l_component_code
37330: --
37331: --
37332: ------------------------------------------------------------------------------------------------
37333: -- 4219869 Business Flow
37334: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37335: -- Prior Entry. Currently, the following code is always generated.
37336: ------------------------------------------------------------------------------------------------
37337: XLA_AE_LINES_PKG.ValidateCurrentLine;
37338:
37333: -- 4219869 Business Flow
37334: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37335: -- Prior Entry. Currently, the following code is always generated.
37336: ------------------------------------------------------------------------------------------------
37337: XLA_AE_LINES_PKG.ValidateCurrentLine;
37338:
37339: ------------------------------------------------------------------------------------
37340: -- 4219869 Business Flow
37341: -- Populated credit and debit amounts -- Need to generate this within IF
37339: ------------------------------------------------------------------------------------
37340: -- 4219869 Business Flow
37341: -- Populated credit and debit amounts -- Need to generate this within IF
37342: ------------------------------------------------------------------------------------
37343: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37344:
37345: ----------------------------------------------------------------------------------
37346: -- 4219869 Business Flow
37347: -- Update journal entry status -- Need to generate this within IF
37371: -- To allow MPA report to determine if it should generate report process
37372: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37373: ------------------------------------------------------------------------------------------
37374:
37375: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37376: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37377: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37378: -- call ADRs
37379: -- Bug 4922099
37372: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37373: ------------------------------------------------------------------------------------------
37374:
37375: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37376: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37377: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37378: -- call ADRs
37379: -- Bug 4922099
37380: --
37396: , x_value_type_code => l_adr_value_type_code
37397: , p_side => 'NA'
37398: );
37399:
37400: xla_ae_lines_pkg.set_ccid(
37401: p_code_combination_id => l_ccid
37402: , p_value_type_code => l_adr_value_type_code
37403: , p_transaction_coa_id => l_adr_transaction_coa_id
37404: , p_accounting_coa_id => l_adr_accounting_coa_id
37429: );
37430:
37431: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
37432:
37433: xla_ae_lines_pkg.set_segment(
37434: p_to_segment_code => 'GL_BALANCING'
37435: , p_segment_value => l_segment
37436: , p_from_segment_code => l_adr_value_segment_code
37437: , p_from_combination_id => l_adr_value_combination_id
37460:
37461: --
37462: -- Update the line information that should be overwritten
37463: --
37464: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37465: p_header_num => 1);
37466: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37467:
37468: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37462: -- Update the line information that should be overwritten
37463: --
37464: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37465: p_header_num => 1);
37466: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37467:
37468: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37469:
37470: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37464: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37465: p_header_num => 1);
37466: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37467:
37468: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37469:
37470: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37471: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37472: END IF;
37467:
37468: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37469:
37470: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37471: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37472: END IF;
37473:
37474: --
37475: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37474: --
37475: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37476: --
37477: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
37478: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
37479: ELSE
37480: ---------------------------------------------------------------------------------------------------
37481: -- 4262811a Switch Sign
37482: ---------------------------------------------------------------------------------------------------
37479: ELSE
37480: ---------------------------------------------------------------------------------------------------
37481: -- 4262811a Switch Sign
37482: ---------------------------------------------------------------------------------------------------
37483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37480: ---------------------------------------------------------------------------------------------------
37481: -- 4262811a Switch Sign
37482: ---------------------------------------------------------------------------------------------------
37483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37488: -- 5132302
37481: -- 4262811a Switch Sign
37482: ---------------------------------------------------------------------------------------------------
37483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37488: -- 5132302
37489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37482: ---------------------------------------------------------------------------------------------------
37483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37488: -- 5132302
37489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37490: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37488: -- 5132302
37489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37490: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37491:
37485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37488: -- 5132302
37489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37490: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37491:
37492: END IF;
37493:
37486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37488: -- 5132302
37489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37490: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37491:
37492: END IF;
37493:
37494: -- 4955764
37491:
37492: END IF;
37493:
37494: -- 4955764
37495: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37496: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37497:
37498:
37499: XLA_AE_LINES_PKG.ValidateCurrentLine;
37495: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37496: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37497:
37498:
37499: XLA_AE_LINES_PKG.ValidateCurrentLine;
37500: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37501:
37502: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37503: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37496: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37497:
37498:
37499: XLA_AE_LINES_PKG.ValidateCurrentLine;
37500: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37501:
37502: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37503: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37504: ,p_balance_type_code => l_balance_type_code);
37637: --
37638: -- bulk performance
37639: --
37640: l_balance_type_code VARCHAR2(1);
37641: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
37642: l_log_module VARCHAR2(240);
37643:
37644: --
37645: -- Upgrade strategy
37717: ') = 'N'
37718: THEN
37719:
37720: --
37721: XLA_AE_LINES_PKG.SetNewLine;
37722:
37723: p_balance_type_code := l_balance_type_code;
37724: -- set the flag so later we will know whether the gain loss line needs to be created
37725:
37729:
37730: --
37731: -- bulk performance
37732: --
37733: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
37734: p_header_num => 0); -- 4262811
37735: --
37736: -- set accounting line options
37737: --
37734: p_header_num => 0); -- 4262811
37735: --
37736: -- set accounting line options
37737: --
37738: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
37739: p_natural_side_code => 'C'
37740: , p_gain_or_loss_flag => 'N'
37741: , p_gl_transfer_mode_code => 'S'
37742: , p_acct_entry_type_code => 'A'
37748: --
37749: --
37750: -- set accounting line type info
37751: --
37752: xla_ae_lines_pkg.SetAcctLineType
37753: (p_component_type => l_component_type
37754: ,p_event_type_code => l_event_type_code
37755: ,p_line_definition_owner_code => l_line_definition_owner_code
37756: ,p_line_definition_code => l_line_definition_code
37762: ,p_event_class_code => l_event_class_code);
37763: --
37764: -- set accounting class
37765: --
37766: xla_ae_lines_pkg.SetAcctClass(
37767: p_accounting_class_code => 'RECEIVABLE'
37768: , p_ae_header_id => l_ae_header_id
37769: );
37770:
37770:
37771: --
37772: -- set rounding class
37773: --
37774: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37775: 'RECEIVABLE';
37776:
37777: --
37778: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37774: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37775: 'RECEIVABLE';
37776:
37777: --
37778: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37779: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37780: --
37781: -- bulk performance
37782: --
37775: 'RECEIVABLE';
37776:
37777: --
37778: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37779: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37780: --
37781: -- bulk performance
37782: --
37783: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37779: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37780: --
37781: -- bulk performance
37782: --
37783: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37784:
37785: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37786: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37787:
37781: -- bulk performance
37782: --
37783: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37784:
37785: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37786: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37787:
37788: -- 4955764
37789: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37785: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37786: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37787:
37788: -- 4955764
37789: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37790: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
37791:
37792: -- 4458381 Public Sector Enh
37793:
37819: l_rec_acct_attrs.array_num_value(10) := p_source_22;
37820: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
37821: l_rec_acct_attrs.array_char_value(11) := p_source_64;
37822:
37823: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37824: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37825:
37826: ---------------------------------------------------------------------------------------------------------------
37827: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37820: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
37821: l_rec_acct_attrs.array_char_value(11) := p_source_64;
37822:
37823: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37824: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37825:
37826: ---------------------------------------------------------------------------------------------------------------
37827: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37828: ---------------------------------------------------------------------------------------------------------------
37823: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37824: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37825:
37826: ---------------------------------------------------------------------------------------------------------------
37827: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37828: ---------------------------------------------------------------------------------------------------------------
37829: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37830:
37831: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37825:
37826: ---------------------------------------------------------------------------------------------------------------
37827: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37828: ---------------------------------------------------------------------------------------------------------------
37829: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37830:
37831: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37832: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37833:
37827: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37828: ---------------------------------------------------------------------------------------------------------------
37829: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37830:
37831: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37832: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37833:
37834: IF xla_accounting_cache_pkg.GetValueChar
37835: (p_source_code => 'LEDGER_CATEGORY_CODE'
37828: ---------------------------------------------------------------------------------------------------------------
37829: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37830:
37831: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37832: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37833:
37834: IF xla_accounting_cache_pkg.GetValueChar
37835: (p_source_code => 'LEDGER_CATEGORY_CODE'
37836: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
37839: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
37840: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
37841: )
37842: THEN
37843: xla_ae_lines_pkg.BflowUpgEntry
37844: (p_business_method_code => l_bflow_method_code
37845: ,p_business_class_code => l_bflow_class_code
37846: ,p_balance_type => l_balance_type_code);
37847: ELSE
37845: ,p_business_class_code => l_bflow_class_code
37846: ,p_balance_type => l_balance_type_code);
37847: ELSE
37848: NULL;
37849: XLA_AE_LINES_PKG.business_flow_validation(
37850: p_business_method_code => l_bflow_method_code
37851: ,p_business_class_code => l_bflow_class_code
37852: ,p_inherit_description_flag => l_inherit_desc_flag);
37853: END IF;
37892: xla_accounting_err_pkg.build_message
37893: (p_appli_s_name => 'XLA'
37894: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
37895: ,p_token_1 => 'LINE_NUMBER'
37896: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
37897: ,p_token_2 => 'LINE_TYPE_NAME'
37898: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
37899: l_component_type
37900: ,l_component_code
37928: --
37929: --
37930: ------------------------------------------------------------------------------------------------
37931: -- 4219869 Business Flow
37932: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37933: -- Prior Entry. Currently, the following code is always generated.
37934: ------------------------------------------------------------------------------------------------
37935: -- No ValidateCurrentLine for business flow method of Prior Entry
37936:
37937: ------------------------------------------------------------------------------------
37938: -- 4219869 Business Flow
37939: -- Populated credit and debit amounts -- Need to generate this within IF
37940: ------------------------------------------------------------------------------------
37941: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37942:
37943: ----------------------------------------------------------------------------------
37944: -- 4219869 Business Flow
37945: -- Update journal entry status -- Need to generate this within IF
37969: -- To allow MPA report to determine if it should generate report process
37970: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37971: ------------------------------------------------------------------------------------------
37972:
37973: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37974: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37975: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37976: -- call ADRs
37977: -- Bug 4922099
37970: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37971: ------------------------------------------------------------------------------------------
37972:
37973: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37974: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37975: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37976: -- call ADRs
37977: -- Bug 4922099
37978: --
37991:
37992: --
37993: -- Update the line information that should be overwritten
37994: --
37995: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37996: p_header_num => 1);
37997: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37998:
37999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37993: -- Update the line information that should be overwritten
37994: --
37995: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37996: p_header_num => 1);
37997: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37998:
37999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38000:
38001: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37995: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37996: p_header_num => 1);
37997: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37998:
37999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38000:
38001: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38002: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38003: END IF;
37998:
37999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38000:
38001: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38002: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38003: END IF;
38004:
38005: --
38006: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38005: --
38006: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38007: --
38008: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
38009: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
38010: ELSE
38011: ---------------------------------------------------------------------------------------------------
38012: -- 4262811a Switch Sign
38013: ---------------------------------------------------------------------------------------------------
38010: ELSE
38011: ---------------------------------------------------------------------------------------------------
38012: -- 4262811a Switch Sign
38013: ---------------------------------------------------------------------------------------------------
38014: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38015: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38016: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38017: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38018: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38011: ---------------------------------------------------------------------------------------------------
38012: -- 4262811a Switch Sign
38013: ---------------------------------------------------------------------------------------------------
38014: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38015: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38016: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38017: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38018: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38019: -- 5132302
38012: -- 4262811a Switch Sign
38013: ---------------------------------------------------------------------------------------------------
38014: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38015: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38016: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38017: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38018: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38019: -- 5132302
38020: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38013: ---------------------------------------------------------------------------------------------------
38014: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38015: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38016: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38017: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38018: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38019: -- 5132302
38020: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38021: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38014: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38015: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38016: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38017: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38018: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38019: -- 5132302
38020: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38021: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38022:
38016: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38017: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38018: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38019: -- 5132302
38020: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38021: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38022:
38023: END IF;
38024:
38017: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38018: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38019: -- 5132302
38020: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38021: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38022:
38023: END IF;
38024:
38025: -- 4955764
38022:
38023: END IF;
38024:
38025: -- 4955764
38026: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38027: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38028:
38029:
38030: XLA_AE_LINES_PKG.ValidateCurrentLine;
38026: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38027: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38028:
38029:
38030: XLA_AE_LINES_PKG.ValidateCurrentLine;
38031: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38032:
38033: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38034: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38027: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38028:
38029:
38030: XLA_AE_LINES_PKG.ValidateCurrentLine;
38031: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38032:
38033: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38034: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38035: ,p_balance_type_code => l_balance_type_code);
38180: --
38181: -- bulk performance
38182: --
38183: l_balance_type_code VARCHAR2(1);
38184: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
38185: l_log_module VARCHAR2(240);
38186:
38187: --
38188: -- Upgrade strategy
38250: ') = 'Y'
38251: THEN
38252:
38253: --
38254: XLA_AE_LINES_PKG.SetNewLine;
38255:
38256: p_balance_type_code := l_balance_type_code;
38257: -- set the flag so later we will know whether the gain loss line needs to be created
38258:
38262:
38263: --
38264: -- bulk performance
38265: --
38266: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
38267: p_header_num => 0); -- 4262811
38268: --
38269: -- set accounting line options
38270: --
38267: p_header_num => 0); -- 4262811
38268: --
38269: -- set accounting line options
38270: --
38271: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
38272: p_natural_side_code => 'C'
38273: , p_gain_or_loss_flag => 'N'
38274: , p_gl_transfer_mode_code => 'S'
38275: , p_acct_entry_type_code => 'A'
38281: --
38282: --
38283: -- set accounting line type info
38284: --
38285: xla_ae_lines_pkg.SetAcctLineType
38286: (p_component_type => l_component_type
38287: ,p_event_type_code => l_event_type_code
38288: ,p_line_definition_owner_code => l_line_definition_owner_code
38289: ,p_line_definition_code => l_line_definition_code
38295: ,p_event_class_code => l_event_class_code);
38296: --
38297: -- set accounting class
38298: --
38299: xla_ae_lines_pkg.SetAcctClass(
38300: p_accounting_class_code => 'REMITTANCE'
38301: , p_ae_header_id => l_ae_header_id
38302: );
38303:
38303:
38304: --
38305: -- set rounding class
38306: --
38307: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38308: 'RECEIVABLE';
38309:
38310: --
38311: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38307: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38308: 'RECEIVABLE';
38309:
38310: --
38311: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38312: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38313: --
38314: -- bulk performance
38315: --
38308: 'RECEIVABLE';
38309:
38310: --
38311: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38312: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38313: --
38314: -- bulk performance
38315: --
38316: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38312: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38313: --
38314: -- bulk performance
38315: --
38316: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38317:
38318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38319: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38320:
38314: -- bulk performance
38315: --
38316: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38317:
38318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38319: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38320:
38321: -- 4955764
38322: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38319: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38320:
38321: -- 4955764
38322: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38323: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
38324:
38325: -- 4458381 Public Sector Enh
38326:
38362: l_rec_acct_attrs.array_num_value(15) := p_source_63;
38363: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
38364: l_rec_acct_attrs.array_char_value(16) := p_source_64;
38365:
38366: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38367: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38368:
38369: ---------------------------------------------------------------------------------------------------------------
38370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38363: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
38364: l_rec_acct_attrs.array_char_value(16) := p_source_64;
38365:
38366: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38367: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38368:
38369: ---------------------------------------------------------------------------------------------------------------
38370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38371: ---------------------------------------------------------------------------------------------------------------
38366: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38367: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38368:
38369: ---------------------------------------------------------------------------------------------------------------
38370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38371: ---------------------------------------------------------------------------------------------------------------
38372: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38373:
38374: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38368:
38369: ---------------------------------------------------------------------------------------------------------------
38370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38371: ---------------------------------------------------------------------------------------------------------------
38372: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38373:
38374: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38375: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38376:
38370: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38371: ---------------------------------------------------------------------------------------------------------------
38372: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38373:
38374: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38375: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38376:
38377: IF xla_accounting_cache_pkg.GetValueChar
38378: (p_source_code => 'LEDGER_CATEGORY_CODE'
38371: ---------------------------------------------------------------------------------------------------------------
38372: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38373:
38374: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38375: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38376:
38377: IF xla_accounting_cache_pkg.GetValueChar
38378: (p_source_code => 'LEDGER_CATEGORY_CODE'
38379: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
38382: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
38383: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
38384: )
38385: THEN
38386: xla_ae_lines_pkg.BflowUpgEntry
38387: (p_business_method_code => l_bflow_method_code
38388: ,p_business_class_code => l_bflow_class_code
38389: ,p_balance_type => l_balance_type_code);
38390: ELSE
38399: --
38400: -- call description
38401: --
38402:
38403: xla_ae_lines_pkg.SetLineDescription(
38404: p_ae_header_id => l_ae_header_id
38405: ,p_description => Description_1 (
38406: p_application_id => p_application_id
38407: , p_ae_header_id => l_ae_header_id
38431: , x_value_type_code => l_adr_value_type_code
38432: , p_side => 'NA'
38433: );
38434:
38435: xla_ae_lines_pkg.set_ccid(
38436: p_code_combination_id => l_ccid
38437: , p_value_type_code => l_adr_value_type_code
38438: , p_transaction_coa_id => l_adr_transaction_coa_id
38439: , p_accounting_coa_id => l_adr_accounting_coa_id
38464: );
38465:
38466: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
38467:
38468: xla_ae_lines_pkg.set_segment(
38469: p_to_segment_code => 'GL_BALANCING'
38470: , p_segment_value => l_segment
38471: , p_from_segment_code => l_adr_value_segment_code
38472: , p_from_combination_id => l_adr_value_combination_id
38508: xla_accounting_err_pkg.build_message
38509: (p_appli_s_name => 'XLA'
38510: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
38511: ,p_token_1 => 'LINE_NUMBER'
38512: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
38513: ,p_token_2 => 'LINE_TYPE_NAME'
38514: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
38515: l_component_type
38516: ,l_component_code
38544: --
38545: --
38546: ------------------------------------------------------------------------------------------------
38547: -- 4219869 Business Flow
38548: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38549: -- Prior Entry. Currently, the following code is always generated.
38550: ------------------------------------------------------------------------------------------------
38551: XLA_AE_LINES_PKG.ValidateCurrentLine;
38552:
38547: -- 4219869 Business Flow
38548: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38549: -- Prior Entry. Currently, the following code is always generated.
38550: ------------------------------------------------------------------------------------------------
38551: XLA_AE_LINES_PKG.ValidateCurrentLine;
38552:
38553: ------------------------------------------------------------------------------------
38554: -- 4219869 Business Flow
38555: -- Populated credit and debit amounts -- Need to generate this within IF
38553: ------------------------------------------------------------------------------------
38554: -- 4219869 Business Flow
38555: -- Populated credit and debit amounts -- Need to generate this within IF
38556: ------------------------------------------------------------------------------------
38557: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38558:
38559: ----------------------------------------------------------------------------------
38560: -- 4219869 Business Flow
38561: -- Update journal entry status -- Need to generate this within IF
38585: -- To allow MPA report to determine if it should generate report process
38586: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38587: ------------------------------------------------------------------------------------------
38588:
38589: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38590: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38591: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38592: -- call ADRs
38593: -- Bug 4922099
38586: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38587: ------------------------------------------------------------------------------------------
38588:
38589: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38590: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38591: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38592: -- call ADRs
38593: -- Bug 4922099
38594: --
38610: , x_value_type_code => l_adr_value_type_code
38611: , p_side => 'NA'
38612: );
38613:
38614: xla_ae_lines_pkg.set_ccid(
38615: p_code_combination_id => l_ccid
38616: , p_value_type_code => l_adr_value_type_code
38617: , p_transaction_coa_id => l_adr_transaction_coa_id
38618: , p_accounting_coa_id => l_adr_accounting_coa_id
38643: );
38644:
38645: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
38646:
38647: xla_ae_lines_pkg.set_segment(
38648: p_to_segment_code => 'GL_BALANCING'
38649: , p_segment_value => l_segment
38650: , p_from_segment_code => l_adr_value_segment_code
38651: , p_from_combination_id => l_adr_value_combination_id
38674:
38675: --
38676: -- Update the line information that should be overwritten
38677: --
38678: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38679: p_header_num => 1);
38680: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38681:
38682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38676: -- Update the line information that should be overwritten
38677: --
38678: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38679: p_header_num => 1);
38680: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38681:
38682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38683:
38684: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38678: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38679: p_header_num => 1);
38680: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38681:
38682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38683:
38684: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38685: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38686: END IF;
38681:
38682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38683:
38684: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38685: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38686: END IF;
38687:
38688: --
38689: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38688: --
38689: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38690: --
38691: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
38692: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
38693: ELSE
38694: ---------------------------------------------------------------------------------------------------
38695: -- 4262811a Switch Sign
38696: ---------------------------------------------------------------------------------------------------
38693: ELSE
38694: ---------------------------------------------------------------------------------------------------
38695: -- 4262811a Switch Sign
38696: ---------------------------------------------------------------------------------------------------
38697: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38699: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38701: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38694: ---------------------------------------------------------------------------------------------------
38695: -- 4262811a Switch Sign
38696: ---------------------------------------------------------------------------------------------------
38697: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38699: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38701: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38702: -- 5132302
38695: -- 4262811a Switch Sign
38696: ---------------------------------------------------------------------------------------------------
38697: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38699: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38701: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38702: -- 5132302
38703: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38696: ---------------------------------------------------------------------------------------------------
38697: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38699: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38701: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38702: -- 5132302
38703: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38704: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38697: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38699: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38701: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38702: -- 5132302
38703: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38704: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38705:
38699: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38701: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38702: -- 5132302
38703: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38704: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38705:
38706: END IF;
38707:
38700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38701: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38702: -- 5132302
38703: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38704: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38705:
38706: END IF;
38707:
38708: -- 4955764
38705:
38706: END IF;
38707:
38708: -- 4955764
38709: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38710: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38711:
38712:
38713: XLA_AE_LINES_PKG.ValidateCurrentLine;
38709: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38710: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38711:
38712:
38713: XLA_AE_LINES_PKG.ValidateCurrentLine;
38714: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38715:
38716: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38717: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38710: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38711:
38712:
38713: XLA_AE_LINES_PKG.ValidateCurrentLine;
38714: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38715:
38716: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38717: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38718: ,p_balance_type_code => l_balance_type_code);
38861: --
38862: -- bulk performance
38863: --
38864: l_balance_type_code VARCHAR2(1);
38865: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
38866: l_log_module VARCHAR2(240);
38867:
38868: --
38869: -- Upgrade strategy
38931: ') = 'N'
38932: THEN
38933:
38934: --
38935: XLA_AE_LINES_PKG.SetNewLine;
38936:
38937: p_balance_type_code := l_balance_type_code;
38938: -- set the flag so later we will know whether the gain loss line needs to be created
38939:
38943:
38944: --
38945: -- bulk performance
38946: --
38947: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
38948: p_header_num => 0); -- 4262811
38949: --
38950: -- set accounting line options
38951: --
38948: p_header_num => 0); -- 4262811
38949: --
38950: -- set accounting line options
38951: --
38952: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
38953: p_natural_side_code => 'C'
38954: , p_gain_or_loss_flag => 'N'
38955: , p_gl_transfer_mode_code => 'S'
38956: , p_acct_entry_type_code => 'A'
38962: --
38963: --
38964: -- set accounting line type info
38965: --
38966: xla_ae_lines_pkg.SetAcctLineType
38967: (p_component_type => l_component_type
38968: ,p_event_type_code => l_event_type_code
38969: ,p_line_definition_owner_code => l_line_definition_owner_code
38970: ,p_line_definition_code => l_line_definition_code
38976: ,p_event_class_code => l_event_class_code);
38977: --
38978: -- set accounting class
38979: --
38980: xla_ae_lines_pkg.SetAcctClass(
38981: p_accounting_class_code => 'BANK_CHG'
38982: , p_ae_header_id => l_ae_header_id
38983: );
38984:
38984:
38985: --
38986: -- set rounding class
38987: --
38988: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38989: 'RECEIVABLE';
38990:
38991: --
38992: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38988: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38989: 'RECEIVABLE';
38990:
38991: --
38992: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38993: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38994: --
38995: -- bulk performance
38996: --
38989: 'RECEIVABLE';
38990:
38991: --
38992: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38993: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38994: --
38995: -- bulk performance
38996: --
38997: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38993: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38994: --
38995: -- bulk performance
38996: --
38997: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38998:
38999: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39000: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39001:
38995: -- bulk performance
38996: --
38997: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38998:
38999: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39000: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39001:
39002: -- 4955764
39003: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38999: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39000: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39001:
39002: -- 4955764
39003: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39004: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
39005:
39006: -- 4458381 Public Sector Enh
39007:
39043: l_rec_acct_attrs.array_num_value(15) := p_source_63;
39044: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
39045: l_rec_acct_attrs.array_char_value(16) := p_source_64;
39046:
39047: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39048: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39049:
39050: ---------------------------------------------------------------------------------------------------------------
39051: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39044: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
39045: l_rec_acct_attrs.array_char_value(16) := p_source_64;
39046:
39047: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39048: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39049:
39050: ---------------------------------------------------------------------------------------------------------------
39051: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39052: ---------------------------------------------------------------------------------------------------------------
39047: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39048: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39049:
39050: ---------------------------------------------------------------------------------------------------------------
39051: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39052: ---------------------------------------------------------------------------------------------------------------
39053: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39054:
39055: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39049:
39050: ---------------------------------------------------------------------------------------------------------------
39051: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39052: ---------------------------------------------------------------------------------------------------------------
39053: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39054:
39055: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39056: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39057:
39051: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39052: ---------------------------------------------------------------------------------------------------------------
39053: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39054:
39055: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39056: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39057:
39058: IF xla_accounting_cache_pkg.GetValueChar
39059: (p_source_code => 'LEDGER_CATEGORY_CODE'
39052: ---------------------------------------------------------------------------------------------------------------
39053: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39054:
39055: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39056: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39057:
39058: IF xla_accounting_cache_pkg.GetValueChar
39059: (p_source_code => 'LEDGER_CATEGORY_CODE'
39060: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
39063: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
39064: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
39065: )
39066: THEN
39067: xla_ae_lines_pkg.BflowUpgEntry
39068: (p_business_method_code => l_bflow_method_code
39069: ,p_business_class_code => l_bflow_class_code
39070: ,p_balance_type => l_balance_type_code);
39071: ELSE
39103: , x_value_type_code => l_adr_value_type_code
39104: , p_side => 'NA'
39105: );
39106:
39107: xla_ae_lines_pkg.set_ccid(
39108: p_code_combination_id => l_ccid
39109: , p_value_type_code => l_adr_value_type_code
39110: , p_transaction_coa_id => l_adr_transaction_coa_id
39111: , p_accounting_coa_id => l_adr_accounting_coa_id
39139: xla_accounting_err_pkg.build_message
39140: (p_appli_s_name => 'XLA'
39141: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
39142: ,p_token_1 => 'LINE_NUMBER'
39143: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
39144: ,p_token_2 => 'LINE_TYPE_NAME'
39145: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
39146: l_component_type
39147: ,l_component_code
39175: --
39176: --
39177: ------------------------------------------------------------------------------------------------
39178: -- 4219869 Business Flow
39179: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39180: -- Prior Entry. Currently, the following code is always generated.
39181: ------------------------------------------------------------------------------------------------
39182: XLA_AE_LINES_PKG.ValidateCurrentLine;
39183:
39178: -- 4219869 Business Flow
39179: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39180: -- Prior Entry. Currently, the following code is always generated.
39181: ------------------------------------------------------------------------------------------------
39182: XLA_AE_LINES_PKG.ValidateCurrentLine;
39183:
39184: ------------------------------------------------------------------------------------
39185: -- 4219869 Business Flow
39186: -- Populated credit and debit amounts -- Need to generate this within IF
39184: ------------------------------------------------------------------------------------
39185: -- 4219869 Business Flow
39186: -- Populated credit and debit amounts -- Need to generate this within IF
39187: ------------------------------------------------------------------------------------
39188: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39189:
39190: ----------------------------------------------------------------------------------
39191: -- 4219869 Business Flow
39192: -- Update journal entry status -- Need to generate this within IF
39216: -- To allow MPA report to determine if it should generate report process
39217: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39218: ------------------------------------------------------------------------------------------
39219:
39220: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39221: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39222: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39223: -- call ADRs
39224: -- Bug 4922099
39217: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39218: ------------------------------------------------------------------------------------------
39219:
39220: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39221: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39222: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39223: -- call ADRs
39224: -- Bug 4922099
39225: --
39241: , x_value_type_code => l_adr_value_type_code
39242: , p_side => 'NA'
39243: );
39244:
39245: xla_ae_lines_pkg.set_ccid(
39246: p_code_combination_id => l_ccid
39247: , p_value_type_code => l_adr_value_type_code
39248: , p_transaction_coa_id => l_adr_transaction_coa_id
39249: , p_accounting_coa_id => l_adr_accounting_coa_id
39264:
39265: --
39266: -- Update the line information that should be overwritten
39267: --
39268: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39269: p_header_num => 1);
39270: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39271:
39272: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39266: -- Update the line information that should be overwritten
39267: --
39268: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39269: p_header_num => 1);
39270: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39271:
39272: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39273:
39274: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39268: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39269: p_header_num => 1);
39270: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39271:
39272: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39273:
39274: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39275: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39276: END IF;
39271:
39272: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39273:
39274: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39275: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39276: END IF;
39277:
39278: --
39279: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39278: --
39279: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39280: --
39281: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
39282: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
39283: ELSE
39284: ---------------------------------------------------------------------------------------------------
39285: -- 4262811a Switch Sign
39286: ---------------------------------------------------------------------------------------------------
39283: ELSE
39284: ---------------------------------------------------------------------------------------------------
39285: -- 4262811a Switch Sign
39286: ---------------------------------------------------------------------------------------------------
39287: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39288: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39290: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39284: ---------------------------------------------------------------------------------------------------
39285: -- 4262811a Switch Sign
39286: ---------------------------------------------------------------------------------------------------
39287: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39288: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39290: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39292: -- 5132302
39285: -- 4262811a Switch Sign
39286: ---------------------------------------------------------------------------------------------------
39287: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39288: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39290: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39292: -- 5132302
39293: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39286: ---------------------------------------------------------------------------------------------------
39287: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39288: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39290: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39292: -- 5132302
39293: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39294: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39287: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39288: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39290: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39292: -- 5132302
39293: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39294: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39295:
39289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39290: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39292: -- 5132302
39293: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39294: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39295:
39296: END IF;
39297:
39290: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39292: -- 5132302
39293: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39294: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39295:
39296: END IF;
39297:
39298: -- 4955764
39295:
39296: END IF;
39297:
39298: -- 4955764
39299: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39300: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39301:
39302:
39303: XLA_AE_LINES_PKG.ValidateCurrentLine;
39299: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39300: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39301:
39302:
39303: XLA_AE_LINES_PKG.ValidateCurrentLine;
39304: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39305:
39306: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39307: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39300: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39301:
39302:
39303: XLA_AE_LINES_PKG.ValidateCurrentLine;
39304: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39305:
39306: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39307: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39308: ,p_balance_type_code => l_balance_type_code);
39451: --
39452: -- bulk performance
39453: --
39454: l_balance_type_code VARCHAR2(1);
39455: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
39456: l_log_module VARCHAR2(240);
39457:
39458: --
39459: -- Upgrade strategy
39521: ') = 'N'
39522: THEN
39523:
39524: --
39525: XLA_AE_LINES_PKG.SetNewLine;
39526:
39527: p_balance_type_code := l_balance_type_code;
39528: -- set the flag so later we will know whether the gain loss line needs to be created
39529:
39533:
39534: --
39535: -- bulk performance
39536: --
39537: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
39538: p_header_num => 0); -- 4262811
39539: --
39540: -- set accounting line options
39541: --
39538: p_header_num => 0); -- 4262811
39539: --
39540: -- set accounting line options
39541: --
39542: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
39543: p_natural_side_code => 'C'
39544: , p_gain_or_loss_flag => 'N'
39545: , p_gl_transfer_mode_code => 'S'
39546: , p_acct_entry_type_code => 'A'
39552: --
39553: --
39554: -- set accounting line type info
39555: --
39556: xla_ae_lines_pkg.SetAcctLineType
39557: (p_component_type => l_component_type
39558: ,p_event_type_code => l_event_type_code
39559: ,p_line_definition_owner_code => l_line_definition_owner_code
39560: ,p_line_definition_code => l_line_definition_code
39566: ,p_event_class_code => l_event_class_code);
39567: --
39568: -- set accounting class
39569: --
39570: xla_ae_lines_pkg.SetAcctClass(
39571: p_accounting_class_code => 'CASH'
39572: , p_ae_header_id => l_ae_header_id
39573: );
39574:
39574:
39575: --
39576: -- set rounding class
39577: --
39578: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39579: 'RECEIVABLE';
39580:
39581: --
39582: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39578: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39579: 'RECEIVABLE';
39580:
39581: --
39582: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39583: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39584: --
39585: -- bulk performance
39586: --
39579: 'RECEIVABLE';
39580:
39581: --
39582: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39583: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39584: --
39585: -- bulk performance
39586: --
39587: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39583: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39584: --
39585: -- bulk performance
39586: --
39587: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39588:
39589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39590: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39591:
39585: -- bulk performance
39586: --
39587: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39588:
39589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39590: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39591:
39592: -- 4955764
39593: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39590: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39591:
39592: -- 4955764
39593: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39594: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
39595:
39596: -- 4458381 Public Sector Enh
39597:
39633: l_rec_acct_attrs.array_num_value(15) := p_source_63;
39634: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
39635: l_rec_acct_attrs.array_char_value(16) := p_source_64;
39636:
39637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39639:
39640: ---------------------------------------------------------------------------------------------------------------
39641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39634: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
39635: l_rec_acct_attrs.array_char_value(16) := p_source_64;
39636:
39637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39639:
39640: ---------------------------------------------------------------------------------------------------------------
39641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39642: ---------------------------------------------------------------------------------------------------------------
39637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39639:
39640: ---------------------------------------------------------------------------------------------------------------
39641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39642: ---------------------------------------------------------------------------------------------------------------
39643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39644:
39645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39639:
39640: ---------------------------------------------------------------------------------------------------------------
39641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39642: ---------------------------------------------------------------------------------------------------------------
39643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39644:
39645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39647:
39641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39642: ---------------------------------------------------------------------------------------------------------------
39643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39644:
39645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39647:
39648: IF xla_accounting_cache_pkg.GetValueChar
39649: (p_source_code => 'LEDGER_CATEGORY_CODE'
39642: ---------------------------------------------------------------------------------------------------------------
39643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39644:
39645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39647:
39648: IF xla_accounting_cache_pkg.GetValueChar
39649: (p_source_code => 'LEDGER_CATEGORY_CODE'
39650: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
39653: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
39654: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
39655: )
39656: THEN
39657: xla_ae_lines_pkg.BflowUpgEntry
39658: (p_business_method_code => l_bflow_method_code
39659: ,p_business_class_code => l_bflow_class_code
39660: ,p_balance_type => l_balance_type_code);
39661: ELSE
39693: , x_value_type_code => l_adr_value_type_code
39694: , p_side => 'NA'
39695: );
39696:
39697: xla_ae_lines_pkg.set_ccid(
39698: p_code_combination_id => l_ccid
39699: , p_value_type_code => l_adr_value_type_code
39700: , p_transaction_coa_id => l_adr_transaction_coa_id
39701: , p_accounting_coa_id => l_adr_accounting_coa_id
39729: xla_accounting_err_pkg.build_message
39730: (p_appli_s_name => 'XLA'
39731: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
39732: ,p_token_1 => 'LINE_NUMBER'
39733: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
39734: ,p_token_2 => 'LINE_TYPE_NAME'
39735: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
39736: l_component_type
39737: ,l_component_code
39765: --
39766: --
39767: ------------------------------------------------------------------------------------------------
39768: -- 4219869 Business Flow
39769: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39770: -- Prior Entry. Currently, the following code is always generated.
39771: ------------------------------------------------------------------------------------------------
39772: XLA_AE_LINES_PKG.ValidateCurrentLine;
39773:
39768: -- 4219869 Business Flow
39769: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39770: -- Prior Entry. Currently, the following code is always generated.
39771: ------------------------------------------------------------------------------------------------
39772: XLA_AE_LINES_PKG.ValidateCurrentLine;
39773:
39774: ------------------------------------------------------------------------------------
39775: -- 4219869 Business Flow
39776: -- Populated credit and debit amounts -- Need to generate this within IF
39774: ------------------------------------------------------------------------------------
39775: -- 4219869 Business Flow
39776: -- Populated credit and debit amounts -- Need to generate this within IF
39777: ------------------------------------------------------------------------------------
39778: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39779:
39780: ----------------------------------------------------------------------------------
39781: -- 4219869 Business Flow
39782: -- Update journal entry status -- Need to generate this within IF
39806: -- To allow MPA report to determine if it should generate report process
39807: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39808: ------------------------------------------------------------------------------------------
39809:
39810: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39811: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39812: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39813: -- call ADRs
39814: -- Bug 4922099
39807: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39808: ------------------------------------------------------------------------------------------
39809:
39810: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39811: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39812: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39813: -- call ADRs
39814: -- Bug 4922099
39815: --
39831: , x_value_type_code => l_adr_value_type_code
39832: , p_side => 'NA'
39833: );
39834:
39835: xla_ae_lines_pkg.set_ccid(
39836: p_code_combination_id => l_ccid
39837: , p_value_type_code => l_adr_value_type_code
39838: , p_transaction_coa_id => l_adr_transaction_coa_id
39839: , p_accounting_coa_id => l_adr_accounting_coa_id
39854:
39855: --
39856: -- Update the line information that should be overwritten
39857: --
39858: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39859: p_header_num => 1);
39860: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39861:
39862: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39856: -- Update the line information that should be overwritten
39857: --
39858: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39859: p_header_num => 1);
39860: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39861:
39862: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39863:
39864: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39858: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39859: p_header_num => 1);
39860: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39861:
39862: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39863:
39864: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39865: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39866: END IF;
39861:
39862: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39863:
39864: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39865: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39866: END IF;
39867:
39868: --
39869: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39868: --
39869: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39870: --
39871: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
39872: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
39873: ELSE
39874: ---------------------------------------------------------------------------------------------------
39875: -- 4262811a Switch Sign
39876: ---------------------------------------------------------------------------------------------------
39873: ELSE
39874: ---------------------------------------------------------------------------------------------------
39875: -- 4262811a Switch Sign
39876: ---------------------------------------------------------------------------------------------------
39877: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39881: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39874: ---------------------------------------------------------------------------------------------------
39875: -- 4262811a Switch Sign
39876: ---------------------------------------------------------------------------------------------------
39877: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39881: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39882: -- 5132302
39875: -- 4262811a Switch Sign
39876: ---------------------------------------------------------------------------------------------------
39877: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39881: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39882: -- 5132302
39883: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39876: ---------------------------------------------------------------------------------------------------
39877: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39881: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39882: -- 5132302
39883: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39884: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39877: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39881: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39882: -- 5132302
39883: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39884: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39885:
39879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39881: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39882: -- 5132302
39883: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39884: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39885:
39886: END IF;
39887:
39880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39881: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39882: -- 5132302
39883: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39884: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39885:
39886: END IF;
39887:
39888: -- 4955764
39885:
39886: END IF;
39887:
39888: -- 4955764
39889: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39890: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39891:
39892:
39893: XLA_AE_LINES_PKG.ValidateCurrentLine;
39889: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39890: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39891:
39892:
39893: XLA_AE_LINES_PKG.ValidateCurrentLine;
39894: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39895:
39896: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39897: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39890: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39891:
39892:
39893: XLA_AE_LINES_PKG.ValidateCurrentLine;
39894: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39895:
39896: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39897: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39898: ,p_balance_type_code => l_balance_type_code);
40043: --
40044: -- bulk performance
40045: --
40046: l_balance_type_code VARCHAR2(1);
40047: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
40048: l_log_module VARCHAR2(240);
40049:
40050: --
40051: -- Upgrade strategy
40115: ') = 'N'
40116: THEN
40117:
40118: --
40119: XLA_AE_LINES_PKG.SetNewLine;
40120:
40121: p_balance_type_code := l_balance_type_code;
40122: -- set the flag so later we will know whether the gain loss line needs to be created
40123:
40127:
40128: --
40129: -- bulk performance
40130: --
40131: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
40132: p_header_num => 0); -- 4262811
40133: --
40134: -- set accounting line options
40135: --
40132: p_header_num => 0); -- 4262811
40133: --
40134: -- set accounting line options
40135: --
40136: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
40137: p_natural_side_code => 'C'
40138: , p_gain_or_loss_flag => 'N'
40139: , p_gl_transfer_mode_code => 'S'
40140: , p_acct_entry_type_code => 'A'
40146: --
40147: --
40148: -- set accounting line type info
40149: --
40150: xla_ae_lines_pkg.SetAcctLineType
40151: (p_component_type => l_component_type
40152: ,p_event_type_code => l_event_type_code
40153: ,p_line_definition_owner_code => l_line_definition_owner_code
40154: ,p_line_definition_code => l_line_definition_code
40160: ,p_event_class_code => l_event_class_code);
40161: --
40162: -- set accounting class
40163: --
40164: xla_ae_lines_pkg.SetAcctClass(
40165: p_accounting_class_code => 'CLAIM'
40166: , p_ae_header_id => l_ae_header_id
40167: );
40168:
40168:
40169: --
40170: -- set rounding class
40171: --
40172: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40173: 'RECEIVABLE';
40174:
40175: --
40176: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40172: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40173: 'RECEIVABLE';
40174:
40175: --
40176: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40177: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40178: --
40179: -- bulk performance
40180: --
40173: 'RECEIVABLE';
40174:
40175: --
40176: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40177: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40178: --
40179: -- bulk performance
40180: --
40181: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40177: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40178: --
40179: -- bulk performance
40180: --
40181: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40182:
40183: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40184: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40185:
40179: -- bulk performance
40180: --
40181: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40182:
40183: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40184: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40185:
40186: -- 4955764
40187: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40183: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40184: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40185:
40186: -- 4955764
40187: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40188: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
40189:
40190: -- 4458381 Public Sector Enh
40191:
40227: l_rec_acct_attrs.array_num_value(15) := p_source_63;
40228: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
40229: l_rec_acct_attrs.array_char_value(16) := p_source_64;
40230:
40231: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40232: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40233:
40234: ---------------------------------------------------------------------------------------------------------------
40235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40228: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
40229: l_rec_acct_attrs.array_char_value(16) := p_source_64;
40230:
40231: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40232: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40233:
40234: ---------------------------------------------------------------------------------------------------------------
40235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40236: ---------------------------------------------------------------------------------------------------------------
40231: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40232: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40233:
40234: ---------------------------------------------------------------------------------------------------------------
40235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40236: ---------------------------------------------------------------------------------------------------------------
40237: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40238:
40239: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40233:
40234: ---------------------------------------------------------------------------------------------------------------
40235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40236: ---------------------------------------------------------------------------------------------------------------
40237: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40238:
40239: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40240: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40241:
40235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40236: ---------------------------------------------------------------------------------------------------------------
40237: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40238:
40239: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40240: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40241:
40242: IF xla_accounting_cache_pkg.GetValueChar
40243: (p_source_code => 'LEDGER_CATEGORY_CODE'
40236: ---------------------------------------------------------------------------------------------------------------
40237: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40238:
40239: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40240: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40241:
40242: IF xla_accounting_cache_pkg.GetValueChar
40243: (p_source_code => 'LEDGER_CATEGORY_CODE'
40244: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
40247: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
40248: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
40249: )
40250: THEN
40251: xla_ae_lines_pkg.BflowUpgEntry
40252: (p_business_method_code => l_bflow_method_code
40253: ,p_business_class_code => l_bflow_class_code
40254: ,p_balance_type => l_balance_type_code);
40255: ELSE
40287: , x_value_type_code => l_adr_value_type_code
40288: , p_side => 'NA'
40289: );
40290:
40291: xla_ae_lines_pkg.set_ccid(
40292: p_code_combination_id => l_ccid
40293: , p_value_type_code => l_adr_value_type_code
40294: , p_transaction_coa_id => l_adr_transaction_coa_id
40295: , p_accounting_coa_id => l_adr_accounting_coa_id
40323: xla_accounting_err_pkg.build_message
40324: (p_appli_s_name => 'XLA'
40325: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
40326: ,p_token_1 => 'LINE_NUMBER'
40327: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
40328: ,p_token_2 => 'LINE_TYPE_NAME'
40329: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
40330: l_component_type
40331: ,l_component_code
40359: --
40360: --
40361: ------------------------------------------------------------------------------------------------
40362: -- 4219869 Business Flow
40363: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40364: -- Prior Entry. Currently, the following code is always generated.
40365: ------------------------------------------------------------------------------------------------
40366: XLA_AE_LINES_PKG.ValidateCurrentLine;
40367:
40362: -- 4219869 Business Flow
40363: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40364: -- Prior Entry. Currently, the following code is always generated.
40365: ------------------------------------------------------------------------------------------------
40366: XLA_AE_LINES_PKG.ValidateCurrentLine;
40367:
40368: ------------------------------------------------------------------------------------
40369: -- 4219869 Business Flow
40370: -- Populated credit and debit amounts -- Need to generate this within IF
40368: ------------------------------------------------------------------------------------
40369: -- 4219869 Business Flow
40370: -- Populated credit and debit amounts -- Need to generate this within IF
40371: ------------------------------------------------------------------------------------
40372: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40373:
40374: ----------------------------------------------------------------------------------
40375: -- 4219869 Business Flow
40376: -- Update journal entry status -- Need to generate this within IF
40400: -- To allow MPA report to determine if it should generate report process
40401: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40402: ------------------------------------------------------------------------------------------
40403:
40404: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40405: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40406: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40407: -- call ADRs
40408: -- Bug 4922099
40401: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40402: ------------------------------------------------------------------------------------------
40403:
40404: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40405: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40406: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40407: -- call ADRs
40408: -- Bug 4922099
40409: --
40425: , x_value_type_code => l_adr_value_type_code
40426: , p_side => 'NA'
40427: );
40428:
40429: xla_ae_lines_pkg.set_ccid(
40430: p_code_combination_id => l_ccid
40431: , p_value_type_code => l_adr_value_type_code
40432: , p_transaction_coa_id => l_adr_transaction_coa_id
40433: , p_accounting_coa_id => l_adr_accounting_coa_id
40448:
40449: --
40450: -- Update the line information that should be overwritten
40451: --
40452: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40453: p_header_num => 1);
40454: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40455:
40456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40450: -- Update the line information that should be overwritten
40451: --
40452: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40453: p_header_num => 1);
40454: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40455:
40456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40457:
40458: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40452: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40453: p_header_num => 1);
40454: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40455:
40456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40457:
40458: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40459: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40460: END IF;
40455:
40456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40457:
40458: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40459: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40460: END IF;
40461:
40462: --
40463: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40462: --
40463: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40464: --
40465: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
40466: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
40467: ELSE
40468: ---------------------------------------------------------------------------------------------------
40469: -- 4262811a Switch Sign
40470: ---------------------------------------------------------------------------------------------------
40467: ELSE
40468: ---------------------------------------------------------------------------------------------------
40469: -- 4262811a Switch Sign
40470: ---------------------------------------------------------------------------------------------------
40471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40468: ---------------------------------------------------------------------------------------------------
40469: -- 4262811a Switch Sign
40470: ---------------------------------------------------------------------------------------------------
40471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40476: -- 5132302
40469: -- 4262811a Switch Sign
40470: ---------------------------------------------------------------------------------------------------
40471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40476: -- 5132302
40477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40470: ---------------------------------------------------------------------------------------------------
40471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40476: -- 5132302
40477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40476: -- 5132302
40477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40479:
40473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40476: -- 5132302
40477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40479:
40480: END IF;
40481:
40474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40476: -- 5132302
40477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40479:
40480: END IF;
40481:
40482: -- 4955764
40479:
40480: END IF;
40481:
40482: -- 4955764
40483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40485:
40486:
40487: XLA_AE_LINES_PKG.ValidateCurrentLine;
40483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40485:
40486:
40487: XLA_AE_LINES_PKG.ValidateCurrentLine;
40488: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40489:
40490: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40491: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40485:
40486:
40487: XLA_AE_LINES_PKG.ValidateCurrentLine;
40488: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40489:
40490: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40491: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40492: ,p_balance_type_code => l_balance_type_code);
40635: --
40636: -- bulk performance
40637: --
40638: l_balance_type_code VARCHAR2(1);
40639: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
40640: l_log_module VARCHAR2(240);
40641:
40642: --
40643: -- Upgrade strategy
40705: ') = 'N'
40706: THEN
40707:
40708: --
40709: XLA_AE_LINES_PKG.SetNewLine;
40710:
40711: p_balance_type_code := l_balance_type_code;
40712: -- set the flag so later we will know whether the gain loss line needs to be created
40713:
40717:
40718: --
40719: -- bulk performance
40720: --
40721: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
40722: p_header_num => 0); -- 4262811
40723: --
40724: -- set accounting line options
40725: --
40722: p_header_num => 0); -- 4262811
40723: --
40724: -- set accounting line options
40725: --
40726: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
40727: p_natural_side_code => 'C'
40728: , p_gain_or_loss_flag => 'N'
40729: , p_gl_transfer_mode_code => 'S'
40730: , p_acct_entry_type_code => 'A'
40736: --
40737: --
40738: -- set accounting line type info
40739: --
40740: xla_ae_lines_pkg.SetAcctLineType
40741: (p_component_type => l_component_type
40742: ,p_event_type_code => l_event_type_code
40743: ,p_line_definition_owner_code => l_line_definition_owner_code
40744: ,p_line_definition_code => l_line_definition_code
40750: ,p_event_class_code => l_event_class_code);
40751: --
40752: -- set accounting class
40753: --
40754: xla_ae_lines_pkg.SetAcctClass(
40755: p_accounting_class_code => 'CONFIRMATION'
40756: , p_ae_header_id => l_ae_header_id
40757: );
40758:
40758:
40759: --
40760: -- set rounding class
40761: --
40762: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40763: 'RECEIVABLE';
40764:
40765: --
40766: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40762: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40763: 'RECEIVABLE';
40764:
40765: --
40766: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40767: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40768: --
40769: -- bulk performance
40770: --
40763: 'RECEIVABLE';
40764:
40765: --
40766: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40767: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40768: --
40769: -- bulk performance
40770: --
40771: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40767: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40768: --
40769: -- bulk performance
40770: --
40771: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40772:
40773: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40774: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40775:
40769: -- bulk performance
40770: --
40771: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40772:
40773: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40774: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40775:
40776: -- 4955764
40777: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40773: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40774: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40775:
40776: -- 4955764
40777: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40778: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
40779:
40780: -- 4458381 Public Sector Enh
40781:
40817: l_rec_acct_attrs.array_num_value(15) := p_source_63;
40818: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
40819: l_rec_acct_attrs.array_char_value(16) := p_source_64;
40820:
40821: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40822: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40823:
40824: ---------------------------------------------------------------------------------------------------------------
40825: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40818: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
40819: l_rec_acct_attrs.array_char_value(16) := p_source_64;
40820:
40821: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40822: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40823:
40824: ---------------------------------------------------------------------------------------------------------------
40825: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40826: ---------------------------------------------------------------------------------------------------------------
40821: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40822: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40823:
40824: ---------------------------------------------------------------------------------------------------------------
40825: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40826: ---------------------------------------------------------------------------------------------------------------
40827: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40828:
40829: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40823:
40824: ---------------------------------------------------------------------------------------------------------------
40825: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40826: ---------------------------------------------------------------------------------------------------------------
40827: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40828:
40829: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40830: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40831:
40825: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40826: ---------------------------------------------------------------------------------------------------------------
40827: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40828:
40829: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40830: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40831:
40832: IF xla_accounting_cache_pkg.GetValueChar
40833: (p_source_code => 'LEDGER_CATEGORY_CODE'
40826: ---------------------------------------------------------------------------------------------------------------
40827: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40828:
40829: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40830: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40831:
40832: IF xla_accounting_cache_pkg.GetValueChar
40833: (p_source_code => 'LEDGER_CATEGORY_CODE'
40834: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
40837: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
40838: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
40839: )
40840: THEN
40841: xla_ae_lines_pkg.BflowUpgEntry
40842: (p_business_method_code => l_bflow_method_code
40843: ,p_business_class_code => l_bflow_class_code
40844: ,p_balance_type => l_balance_type_code);
40845: ELSE
40877: , x_value_type_code => l_adr_value_type_code
40878: , p_side => 'NA'
40879: );
40880:
40881: xla_ae_lines_pkg.set_ccid(
40882: p_code_combination_id => l_ccid
40883: , p_value_type_code => l_adr_value_type_code
40884: , p_transaction_coa_id => l_adr_transaction_coa_id
40885: , p_accounting_coa_id => l_adr_accounting_coa_id
40913: xla_accounting_err_pkg.build_message
40914: (p_appli_s_name => 'XLA'
40915: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
40916: ,p_token_1 => 'LINE_NUMBER'
40917: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
40918: ,p_token_2 => 'LINE_TYPE_NAME'
40919: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
40920: l_component_type
40921: ,l_component_code
40949: --
40950: --
40951: ------------------------------------------------------------------------------------------------
40952: -- 4219869 Business Flow
40953: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40954: -- Prior Entry. Currently, the following code is always generated.
40955: ------------------------------------------------------------------------------------------------
40956: XLA_AE_LINES_PKG.ValidateCurrentLine;
40957:
40952: -- 4219869 Business Flow
40953: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40954: -- Prior Entry. Currently, the following code is always generated.
40955: ------------------------------------------------------------------------------------------------
40956: XLA_AE_LINES_PKG.ValidateCurrentLine;
40957:
40958: ------------------------------------------------------------------------------------
40959: -- 4219869 Business Flow
40960: -- Populated credit and debit amounts -- Need to generate this within IF
40958: ------------------------------------------------------------------------------------
40959: -- 4219869 Business Flow
40960: -- Populated credit and debit amounts -- Need to generate this within IF
40961: ------------------------------------------------------------------------------------
40962: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40963:
40964: ----------------------------------------------------------------------------------
40965: -- 4219869 Business Flow
40966: -- Update journal entry status -- Need to generate this within IF
40990: -- To allow MPA report to determine if it should generate report process
40991: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40992: ------------------------------------------------------------------------------------------
40993:
40994: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40995: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40996: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40997: -- call ADRs
40998: -- Bug 4922099
40991: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40992: ------------------------------------------------------------------------------------------
40993:
40994: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40995: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40996: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40997: -- call ADRs
40998: -- Bug 4922099
40999: --
41015: , x_value_type_code => l_adr_value_type_code
41016: , p_side => 'NA'
41017: );
41018:
41019: xla_ae_lines_pkg.set_ccid(
41020: p_code_combination_id => l_ccid
41021: , p_value_type_code => l_adr_value_type_code
41022: , p_transaction_coa_id => l_adr_transaction_coa_id
41023: , p_accounting_coa_id => l_adr_accounting_coa_id
41038:
41039: --
41040: -- Update the line information that should be overwritten
41041: --
41042: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41043: p_header_num => 1);
41044: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41045:
41046: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41040: -- Update the line information that should be overwritten
41041: --
41042: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41043: p_header_num => 1);
41044: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41045:
41046: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41047:
41048: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41042: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41043: p_header_num => 1);
41044: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41045:
41046: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41047:
41048: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41049: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41050: END IF;
41045:
41046: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41047:
41048: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41049: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41050: END IF;
41051:
41052: --
41053: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41052: --
41053: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41054: --
41055: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
41056: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
41057: ELSE
41058: ---------------------------------------------------------------------------------------------------
41059: -- 4262811a Switch Sign
41060: ---------------------------------------------------------------------------------------------------
41057: ELSE
41058: ---------------------------------------------------------------------------------------------------
41059: -- 4262811a Switch Sign
41060: ---------------------------------------------------------------------------------------------------
41061: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41058: ---------------------------------------------------------------------------------------------------
41059: -- 4262811a Switch Sign
41060: ---------------------------------------------------------------------------------------------------
41061: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41066: -- 5132302
41059: -- 4262811a Switch Sign
41060: ---------------------------------------------------------------------------------------------------
41061: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41066: -- 5132302
41067: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41060: ---------------------------------------------------------------------------------------------------
41061: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41066: -- 5132302
41067: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41068: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41061: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41066: -- 5132302
41067: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41068: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41069:
41063: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41066: -- 5132302
41067: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41068: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41069:
41070: END IF;
41071:
41064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41065: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41066: -- 5132302
41067: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41068: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41069:
41070: END IF;
41071:
41072: -- 4955764
41069:
41070: END IF;
41071:
41072: -- 4955764
41073: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41074: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41075:
41076:
41077: XLA_AE_LINES_PKG.ValidateCurrentLine;
41073: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41074: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41075:
41076:
41077: XLA_AE_LINES_PKG.ValidateCurrentLine;
41078: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41079:
41080: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41081: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41074: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41075:
41076:
41077: XLA_AE_LINES_PKG.ValidateCurrentLine;
41078: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41079:
41080: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41081: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41082: ,p_balance_type_code => l_balance_type_code);
41225: --
41226: -- bulk performance
41227: --
41228: l_balance_type_code VARCHAR2(1);
41229: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
41230: l_log_module VARCHAR2(240);
41231:
41232: --
41233: -- Upgrade strategy
41295: ') = 'N'
41296: THEN
41297:
41298: --
41299: XLA_AE_LINES_PKG.SetNewLine;
41300:
41301: p_balance_type_code := l_balance_type_code;
41302: -- set the flag so later we will know whether the gain loss line needs to be created
41303:
41307:
41308: --
41309: -- bulk performance
41310: --
41311: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
41312: p_header_num => 0); -- 4262811
41313: --
41314: -- set accounting line options
41315: --
41312: p_header_num => 0); -- 4262811
41313: --
41314: -- set accounting line options
41315: --
41316: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
41317: p_natural_side_code => 'C'
41318: , p_gain_or_loss_flag => 'N'
41319: , p_gl_transfer_mode_code => 'S'
41320: , p_acct_entry_type_code => 'A'
41326: --
41327: --
41328: -- set accounting line type info
41329: --
41330: xla_ae_lines_pkg.SetAcctLineType
41331: (p_component_type => l_component_type
41332: ,p_event_type_code => l_event_type_code
41333: ,p_line_definition_owner_code => l_line_definition_owner_code
41334: ,p_line_definition_code => l_line_definition_code
41340: ,p_event_class_code => l_event_class_code);
41341: --
41342: -- set accounting class
41343: --
41344: xla_ae_lines_pkg.SetAcctClass(
41345: p_accounting_class_code => 'ROUNDING'
41346: , p_ae_header_id => l_ae_header_id
41347: );
41348:
41348:
41349: --
41350: -- set rounding class
41351: --
41352: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41353: 'RECEIVABLE';
41354:
41355: --
41356: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41352: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41353: 'RECEIVABLE';
41354:
41355: --
41356: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41357: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41358: --
41359: -- bulk performance
41360: --
41353: 'RECEIVABLE';
41354:
41355: --
41356: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41357: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41358: --
41359: -- bulk performance
41360: --
41361: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41357: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41358: --
41359: -- bulk performance
41360: --
41361: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41362:
41363: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41364: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41365:
41359: -- bulk performance
41360: --
41361: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41362:
41363: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41364: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41365:
41366: -- 4955764
41367: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41363: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41364: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41365:
41366: -- 4955764
41367: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41368: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
41369:
41370: -- 4458381 Public Sector Enh
41371:
41407: l_rec_acct_attrs.array_num_value(15) := p_source_63;
41408: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
41409: l_rec_acct_attrs.array_char_value(16) := p_source_64;
41410:
41411: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41412: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41413:
41414: ---------------------------------------------------------------------------------------------------------------
41415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41408: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
41409: l_rec_acct_attrs.array_char_value(16) := p_source_64;
41410:
41411: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41412: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41413:
41414: ---------------------------------------------------------------------------------------------------------------
41415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41416: ---------------------------------------------------------------------------------------------------------------
41411: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41412: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41413:
41414: ---------------------------------------------------------------------------------------------------------------
41415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41416: ---------------------------------------------------------------------------------------------------------------
41417: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41418:
41419: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41413:
41414: ---------------------------------------------------------------------------------------------------------------
41415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41416: ---------------------------------------------------------------------------------------------------------------
41417: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41418:
41419: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41420: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41421:
41415: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41416: ---------------------------------------------------------------------------------------------------------------
41417: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41418:
41419: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41420: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41421:
41422: IF xla_accounting_cache_pkg.GetValueChar
41423: (p_source_code => 'LEDGER_CATEGORY_CODE'
41416: ---------------------------------------------------------------------------------------------------------------
41417: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41418:
41419: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41420: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41421:
41422: IF xla_accounting_cache_pkg.GetValueChar
41423: (p_source_code => 'LEDGER_CATEGORY_CODE'
41424: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
41427: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
41428: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
41429: )
41430: THEN
41431: xla_ae_lines_pkg.BflowUpgEntry
41432: (p_business_method_code => l_bflow_method_code
41433: ,p_business_class_code => l_bflow_class_code
41434: ,p_balance_type => l_balance_type_code);
41435: ELSE
41467: , x_value_type_code => l_adr_value_type_code
41468: , p_side => 'NA'
41469: );
41470:
41471: xla_ae_lines_pkg.set_ccid(
41472: p_code_combination_id => l_ccid
41473: , p_value_type_code => l_adr_value_type_code
41474: , p_transaction_coa_id => l_adr_transaction_coa_id
41475: , p_accounting_coa_id => l_adr_accounting_coa_id
41503: xla_accounting_err_pkg.build_message
41504: (p_appli_s_name => 'XLA'
41505: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
41506: ,p_token_1 => 'LINE_NUMBER'
41507: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
41508: ,p_token_2 => 'LINE_TYPE_NAME'
41509: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
41510: l_component_type
41511: ,l_component_code
41539: --
41540: --
41541: ------------------------------------------------------------------------------------------------
41542: -- 4219869 Business Flow
41543: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41544: -- Prior Entry. Currently, the following code is always generated.
41545: ------------------------------------------------------------------------------------------------
41546: XLA_AE_LINES_PKG.ValidateCurrentLine;
41547:
41542: -- 4219869 Business Flow
41543: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41544: -- Prior Entry. Currently, the following code is always generated.
41545: ------------------------------------------------------------------------------------------------
41546: XLA_AE_LINES_PKG.ValidateCurrentLine;
41547:
41548: ------------------------------------------------------------------------------------
41549: -- 4219869 Business Flow
41550: -- Populated credit and debit amounts -- Need to generate this within IF
41548: ------------------------------------------------------------------------------------
41549: -- 4219869 Business Flow
41550: -- Populated credit and debit amounts -- Need to generate this within IF
41551: ------------------------------------------------------------------------------------
41552: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41553:
41554: ----------------------------------------------------------------------------------
41555: -- 4219869 Business Flow
41556: -- Update journal entry status -- Need to generate this within IF
41580: -- To allow MPA report to determine if it should generate report process
41581: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41582: ------------------------------------------------------------------------------------------
41583:
41584: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41585: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41586: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41587: -- call ADRs
41588: -- Bug 4922099
41581: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41582: ------------------------------------------------------------------------------------------
41583:
41584: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41585: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41586: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41587: -- call ADRs
41588: -- Bug 4922099
41589: --
41605: , x_value_type_code => l_adr_value_type_code
41606: , p_side => 'NA'
41607: );
41608:
41609: xla_ae_lines_pkg.set_ccid(
41610: p_code_combination_id => l_ccid
41611: , p_value_type_code => l_adr_value_type_code
41612: , p_transaction_coa_id => l_adr_transaction_coa_id
41613: , p_accounting_coa_id => l_adr_accounting_coa_id
41628:
41629: --
41630: -- Update the line information that should be overwritten
41631: --
41632: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41633: p_header_num => 1);
41634: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41635:
41636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41630: -- Update the line information that should be overwritten
41631: --
41632: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41633: p_header_num => 1);
41634: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41635:
41636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41637:
41638: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41632: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41633: p_header_num => 1);
41634: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41635:
41636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41637:
41638: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41639: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41640: END IF;
41635:
41636: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41637:
41638: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41639: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41640: END IF;
41641:
41642: --
41643: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41642: --
41643: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41644: --
41645: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
41646: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
41647: ELSE
41648: ---------------------------------------------------------------------------------------------------
41649: -- 4262811a Switch Sign
41650: ---------------------------------------------------------------------------------------------------
41647: ELSE
41648: ---------------------------------------------------------------------------------------------------
41649: -- 4262811a Switch Sign
41650: ---------------------------------------------------------------------------------------------------
41651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41648: ---------------------------------------------------------------------------------------------------
41649: -- 4262811a Switch Sign
41650: ---------------------------------------------------------------------------------------------------
41651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41656: -- 5132302
41649: -- 4262811a Switch Sign
41650: ---------------------------------------------------------------------------------------------------
41651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41656: -- 5132302
41657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41650: ---------------------------------------------------------------------------------------------------
41651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41656: -- 5132302
41657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41658: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41651: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41656: -- 5132302
41657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41658: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41659:
41653: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41656: -- 5132302
41657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41658: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41659:
41660: END IF;
41661:
41654: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41655: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41656: -- 5132302
41657: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41658: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41659:
41660: END IF;
41661:
41662: -- 4955764
41659:
41660: END IF;
41661:
41662: -- 4955764
41663: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41664: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41665:
41666:
41667: XLA_AE_LINES_PKG.ValidateCurrentLine;
41663: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41664: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41665:
41666:
41667: XLA_AE_LINES_PKG.ValidateCurrentLine;
41668: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41669:
41670: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41671: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41664: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41665:
41666:
41667: XLA_AE_LINES_PKG.ValidateCurrentLine;
41668: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41669:
41670: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41671: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41672: ,p_balance_type_code => l_balance_type_code);
41815: --
41816: -- bulk performance
41817: --
41818: l_balance_type_code VARCHAR2(1);
41819: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
41820: l_log_module VARCHAR2(240);
41821:
41822: --
41823: -- Upgrade strategy
41885: ') = 'N'
41886: THEN
41887:
41888: --
41889: XLA_AE_LINES_PKG.SetNewLine;
41890:
41891: p_balance_type_code := l_balance_type_code;
41892: -- set the flag so later we will know whether the gain loss line needs to be created
41893:
41897:
41898: --
41899: -- bulk performance
41900: --
41901: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
41902: p_header_num => 0); -- 4262811
41903: --
41904: -- set accounting line options
41905: --
41902: p_header_num => 0); -- 4262811
41903: --
41904: -- set accounting line options
41905: --
41906: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
41907: p_natural_side_code => 'C'
41908: , p_gain_or_loss_flag => 'N'
41909: , p_gl_transfer_mode_code => 'S'
41910: , p_acct_entry_type_code => 'A'
41916: --
41917: --
41918: -- set accounting line type info
41919: --
41920: xla_ae_lines_pkg.SetAcctLineType
41921: (p_component_type => l_component_type
41922: ,p_event_type_code => l_event_type_code
41923: ,p_line_definition_owner_code => l_line_definition_owner_code
41924: ,p_line_definition_code => l_line_definition_code
41930: ,p_event_class_code => l_event_class_code);
41931: --
41932: -- set accounting class
41933: --
41934: xla_ae_lines_pkg.SetAcctClass(
41935: p_accounting_class_code => 'SHORT_TERM_DEBT'
41936: , p_ae_header_id => l_ae_header_id
41937: );
41938:
41938:
41939: --
41940: -- set rounding class
41941: --
41942: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41943: 'RECEIVABLE';
41944:
41945: --
41946: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41942: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41943: 'RECEIVABLE';
41944:
41945: --
41946: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41947: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41948: --
41949: -- bulk performance
41950: --
41943: 'RECEIVABLE';
41944:
41945: --
41946: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41947: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41948: --
41949: -- bulk performance
41950: --
41951: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41947: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41948: --
41949: -- bulk performance
41950: --
41951: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41952:
41953: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41954: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41955:
41949: -- bulk performance
41950: --
41951: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41952:
41953: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41954: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41955:
41956: -- 4955764
41957: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41953: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41954: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41955:
41956: -- 4955764
41957: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41958: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
41959:
41960: -- 4458381 Public Sector Enh
41961:
41997: l_rec_acct_attrs.array_num_value(15) := p_source_63;
41998: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
41999: l_rec_acct_attrs.array_char_value(16) := p_source_64;
42000:
42001: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42002: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42003:
42004: ---------------------------------------------------------------------------------------------------------------
42005: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41998: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
41999: l_rec_acct_attrs.array_char_value(16) := p_source_64;
42000:
42001: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42002: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42003:
42004: ---------------------------------------------------------------------------------------------------------------
42005: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42006: ---------------------------------------------------------------------------------------------------------------
42001: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42002: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42003:
42004: ---------------------------------------------------------------------------------------------------------------
42005: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42006: ---------------------------------------------------------------------------------------------------------------
42007: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42008:
42009: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42003:
42004: ---------------------------------------------------------------------------------------------------------------
42005: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42006: ---------------------------------------------------------------------------------------------------------------
42007: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42008:
42009: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42010: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42011:
42005: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42006: ---------------------------------------------------------------------------------------------------------------
42007: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42008:
42009: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42010: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42011:
42012: IF xla_accounting_cache_pkg.GetValueChar
42013: (p_source_code => 'LEDGER_CATEGORY_CODE'
42006: ---------------------------------------------------------------------------------------------------------------
42007: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42008:
42009: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42010: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42011:
42012: IF xla_accounting_cache_pkg.GetValueChar
42013: (p_source_code => 'LEDGER_CATEGORY_CODE'
42014: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
42017: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
42018: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
42019: )
42020: THEN
42021: xla_ae_lines_pkg.BflowUpgEntry
42022: (p_business_method_code => l_bflow_method_code
42023: ,p_business_class_code => l_bflow_class_code
42024: ,p_balance_type => l_balance_type_code);
42025: ELSE
42057: , x_value_type_code => l_adr_value_type_code
42058: , p_side => 'NA'
42059: );
42060:
42061: xla_ae_lines_pkg.set_ccid(
42062: p_code_combination_id => l_ccid
42063: , p_value_type_code => l_adr_value_type_code
42064: , p_transaction_coa_id => l_adr_transaction_coa_id
42065: , p_accounting_coa_id => l_adr_accounting_coa_id
42093: xla_accounting_err_pkg.build_message
42094: (p_appli_s_name => 'XLA'
42095: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
42096: ,p_token_1 => 'LINE_NUMBER'
42097: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
42098: ,p_token_2 => 'LINE_TYPE_NAME'
42099: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
42100: l_component_type
42101: ,l_component_code
42129: --
42130: --
42131: ------------------------------------------------------------------------------------------------
42132: -- 4219869 Business Flow
42133: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42134: -- Prior Entry. Currently, the following code is always generated.
42135: ------------------------------------------------------------------------------------------------
42136: XLA_AE_LINES_PKG.ValidateCurrentLine;
42137:
42132: -- 4219869 Business Flow
42133: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42134: -- Prior Entry. Currently, the following code is always generated.
42135: ------------------------------------------------------------------------------------------------
42136: XLA_AE_LINES_PKG.ValidateCurrentLine;
42137:
42138: ------------------------------------------------------------------------------------
42139: -- 4219869 Business Flow
42140: -- Populated credit and debit amounts -- Need to generate this within IF
42138: ------------------------------------------------------------------------------------
42139: -- 4219869 Business Flow
42140: -- Populated credit and debit amounts -- Need to generate this within IF
42141: ------------------------------------------------------------------------------------
42142: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42143:
42144: ----------------------------------------------------------------------------------
42145: -- 4219869 Business Flow
42146: -- Update journal entry status -- Need to generate this within IF
42170: -- To allow MPA report to determine if it should generate report process
42171: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42172: ------------------------------------------------------------------------------------------
42173:
42174: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42175: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42176: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42177: -- call ADRs
42178: -- Bug 4922099
42171: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42172: ------------------------------------------------------------------------------------------
42173:
42174: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42175: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42176: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42177: -- call ADRs
42178: -- Bug 4922099
42179: --
42195: , x_value_type_code => l_adr_value_type_code
42196: , p_side => 'NA'
42197: );
42198:
42199: xla_ae_lines_pkg.set_ccid(
42200: p_code_combination_id => l_ccid
42201: , p_value_type_code => l_adr_value_type_code
42202: , p_transaction_coa_id => l_adr_transaction_coa_id
42203: , p_accounting_coa_id => l_adr_accounting_coa_id
42218:
42219: --
42220: -- Update the line information that should be overwritten
42221: --
42222: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42223: p_header_num => 1);
42224: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42225:
42226: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42220: -- Update the line information that should be overwritten
42221: --
42222: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42223: p_header_num => 1);
42224: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42225:
42226: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42227:
42228: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42222: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42223: p_header_num => 1);
42224: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42225:
42226: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42227:
42228: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42229: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42230: END IF;
42225:
42226: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42227:
42228: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42229: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42230: END IF;
42231:
42232: --
42233: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42232: --
42233: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42234: --
42235: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
42236: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
42237: ELSE
42238: ---------------------------------------------------------------------------------------------------
42239: -- 4262811a Switch Sign
42240: ---------------------------------------------------------------------------------------------------
42237: ELSE
42238: ---------------------------------------------------------------------------------------------------
42239: -- 4262811a Switch Sign
42240: ---------------------------------------------------------------------------------------------------
42241: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42242: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42244: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42245: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42238: ---------------------------------------------------------------------------------------------------
42239: -- 4262811a Switch Sign
42240: ---------------------------------------------------------------------------------------------------
42241: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42242: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42244: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42245: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42246: -- 5132302
42239: -- 4262811a Switch Sign
42240: ---------------------------------------------------------------------------------------------------
42241: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42242: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42244: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42245: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42246: -- 5132302
42247: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42240: ---------------------------------------------------------------------------------------------------
42241: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42242: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42244: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42245: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42246: -- 5132302
42247: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42248: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42241: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42242: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42244: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42245: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42246: -- 5132302
42247: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42248: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42249:
42243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42244: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42245: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42246: -- 5132302
42247: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42248: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42249:
42250: END IF;
42251:
42244: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42245: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42246: -- 5132302
42247: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42248: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42249:
42250: END IF;
42251:
42252: -- 4955764
42249:
42250: END IF;
42251:
42252: -- 4955764
42253: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42254: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42255:
42256:
42257: XLA_AE_LINES_PKG.ValidateCurrentLine;
42253: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42254: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42255:
42256:
42257: XLA_AE_LINES_PKG.ValidateCurrentLine;
42258: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42259:
42260: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42261: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42254: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42255:
42256:
42257: XLA_AE_LINES_PKG.ValidateCurrentLine;
42258: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42259:
42260: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42261: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42262: ,p_balance_type_code => l_balance_type_code);
42405: --
42406: -- bulk performance
42407: --
42408: l_balance_type_code VARCHAR2(1);
42409: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
42410: l_log_module VARCHAR2(240);
42411:
42412: --
42413: -- Upgrade strategy
42475: ') = 'N'
42476: THEN
42477:
42478: --
42479: XLA_AE_LINES_PKG.SetNewLine;
42480:
42481: p_balance_type_code := l_balance_type_code;
42482: -- set the flag so later we will know whether the gain loss line needs to be created
42483:
42487:
42488: --
42489: -- bulk performance
42490: --
42491: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
42492: p_header_num => 0); -- 4262811
42493: --
42494: -- set accounting line options
42495: --
42492: p_header_num => 0); -- 4262811
42493: --
42494: -- set accounting line options
42495: --
42496: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
42497: p_natural_side_code => 'C'
42498: , p_gain_or_loss_flag => 'N'
42499: , p_gl_transfer_mode_code => 'S'
42500: , p_acct_entry_type_code => 'A'
42506: --
42507: --
42508: -- set accounting line type info
42509: --
42510: xla_ae_lines_pkg.SetAcctLineType
42511: (p_component_type => l_component_type
42512: ,p_event_type_code => l_event_type_code
42513: ,p_line_definition_owner_code => l_line_definition_owner_code
42514: ,p_line_definition_code => l_line_definition_code
42520: ,p_event_class_code => l_event_class_code);
42521: --
42522: -- set accounting class
42523: --
42524: xla_ae_lines_pkg.SetAcctClass(
42525: p_accounting_class_code => 'DEFERRED_TAX'
42526: , p_ae_header_id => l_ae_header_id
42527: );
42528:
42528:
42529: --
42530: -- set rounding class
42531: --
42532: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42533: 'RECEIVABLE';
42534:
42535: --
42536: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42532: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42533: 'RECEIVABLE';
42534:
42535: --
42536: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42537: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42538: --
42539: -- bulk performance
42540: --
42533: 'RECEIVABLE';
42534:
42535: --
42536: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42537: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42538: --
42539: -- bulk performance
42540: --
42541: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42537: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42538: --
42539: -- bulk performance
42540: --
42541: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42542:
42543: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42544: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42545:
42539: -- bulk performance
42540: --
42541: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42542:
42543: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42544: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42545:
42546: -- 4955764
42547: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42543: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42544: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42545:
42546: -- 4955764
42547: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42548: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
42549:
42550: -- 4458381 Public Sector Enh
42551:
42587: l_rec_acct_attrs.array_num_value(15) := p_source_63;
42588: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
42589: l_rec_acct_attrs.array_char_value(16) := p_source_64;
42590:
42591: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42592: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42593:
42594: ---------------------------------------------------------------------------------------------------------------
42595: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42588: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
42589: l_rec_acct_attrs.array_char_value(16) := p_source_64;
42590:
42591: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42592: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42593:
42594: ---------------------------------------------------------------------------------------------------------------
42595: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42596: ---------------------------------------------------------------------------------------------------------------
42591: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42592: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42593:
42594: ---------------------------------------------------------------------------------------------------------------
42595: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42596: ---------------------------------------------------------------------------------------------------------------
42597: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42598:
42599: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42593:
42594: ---------------------------------------------------------------------------------------------------------------
42595: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42596: ---------------------------------------------------------------------------------------------------------------
42597: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42598:
42599: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42600: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42601:
42595: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42596: ---------------------------------------------------------------------------------------------------------------
42597: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42598:
42599: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42600: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42601:
42602: IF xla_accounting_cache_pkg.GetValueChar
42603: (p_source_code => 'LEDGER_CATEGORY_CODE'
42596: ---------------------------------------------------------------------------------------------------------------
42597: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42598:
42599: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42600: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42601:
42602: IF xla_accounting_cache_pkg.GetValueChar
42603: (p_source_code => 'LEDGER_CATEGORY_CODE'
42604: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
42607: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
42608: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
42609: )
42610: THEN
42611: xla_ae_lines_pkg.BflowUpgEntry
42612: (p_business_method_code => l_bflow_method_code
42613: ,p_business_class_code => l_bflow_class_code
42614: ,p_balance_type => l_balance_type_code);
42615: ELSE
42647: , x_value_type_code => l_adr_value_type_code
42648: , p_side => 'NA'
42649: );
42650:
42651: xla_ae_lines_pkg.set_ccid(
42652: p_code_combination_id => l_ccid
42653: , p_value_type_code => l_adr_value_type_code
42654: , p_transaction_coa_id => l_adr_transaction_coa_id
42655: , p_accounting_coa_id => l_adr_accounting_coa_id
42683: xla_accounting_err_pkg.build_message
42684: (p_appli_s_name => 'XLA'
42685: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
42686: ,p_token_1 => 'LINE_NUMBER'
42687: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
42688: ,p_token_2 => 'LINE_TYPE_NAME'
42689: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
42690: l_component_type
42691: ,l_component_code
42719: --
42720: --
42721: ------------------------------------------------------------------------------------------------
42722: -- 4219869 Business Flow
42723: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42724: -- Prior Entry. Currently, the following code is always generated.
42725: ------------------------------------------------------------------------------------------------
42726: XLA_AE_LINES_PKG.ValidateCurrentLine;
42727:
42722: -- 4219869 Business Flow
42723: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42724: -- Prior Entry. Currently, the following code is always generated.
42725: ------------------------------------------------------------------------------------------------
42726: XLA_AE_LINES_PKG.ValidateCurrentLine;
42727:
42728: ------------------------------------------------------------------------------------
42729: -- 4219869 Business Flow
42730: -- Populated credit and debit amounts -- Need to generate this within IF
42728: ------------------------------------------------------------------------------------
42729: -- 4219869 Business Flow
42730: -- Populated credit and debit amounts -- Need to generate this within IF
42731: ------------------------------------------------------------------------------------
42732: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42733:
42734: ----------------------------------------------------------------------------------
42735: -- 4219869 Business Flow
42736: -- Update journal entry status -- Need to generate this within IF
42760: -- To allow MPA report to determine if it should generate report process
42761: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42762: ------------------------------------------------------------------------------------------
42763:
42764: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42765: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42766: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42767: -- call ADRs
42768: -- Bug 4922099
42761: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42762: ------------------------------------------------------------------------------------------
42763:
42764: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42765: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42766: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42767: -- call ADRs
42768: -- Bug 4922099
42769: --
42785: , x_value_type_code => l_adr_value_type_code
42786: , p_side => 'NA'
42787: );
42788:
42789: xla_ae_lines_pkg.set_ccid(
42790: p_code_combination_id => l_ccid
42791: , p_value_type_code => l_adr_value_type_code
42792: , p_transaction_coa_id => l_adr_transaction_coa_id
42793: , p_accounting_coa_id => l_adr_accounting_coa_id
42808:
42809: --
42810: -- Update the line information that should be overwritten
42811: --
42812: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42813: p_header_num => 1);
42814: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42815:
42816: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42810: -- Update the line information that should be overwritten
42811: --
42812: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42813: p_header_num => 1);
42814: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42815:
42816: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42817:
42818: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42812: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42813: p_header_num => 1);
42814: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42815:
42816: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42817:
42818: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42819: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42820: END IF;
42815:
42816: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42817:
42818: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42819: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42820: END IF;
42821:
42822: --
42823: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42822: --
42823: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42824: --
42825: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
42826: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
42827: ELSE
42828: ---------------------------------------------------------------------------------------------------
42829: -- 4262811a Switch Sign
42830: ---------------------------------------------------------------------------------------------------
42827: ELSE
42828: ---------------------------------------------------------------------------------------------------
42829: -- 4262811a Switch Sign
42830: ---------------------------------------------------------------------------------------------------
42831: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42832: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42833: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42834: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42835: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42828: ---------------------------------------------------------------------------------------------------
42829: -- 4262811a Switch Sign
42830: ---------------------------------------------------------------------------------------------------
42831: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42832: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42833: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42834: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42835: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42836: -- 5132302
42829: -- 4262811a Switch Sign
42830: ---------------------------------------------------------------------------------------------------
42831: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42832: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42833: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42834: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42835: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42836: -- 5132302
42837: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42830: ---------------------------------------------------------------------------------------------------
42831: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42832: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42833: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42834: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42835: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42836: -- 5132302
42837: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42838: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42831: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42832: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42833: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42834: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42835: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42836: -- 5132302
42837: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42838: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42839:
42833: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42834: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42835: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42836: -- 5132302
42837: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42838: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42839:
42840: END IF;
42841:
42834: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42835: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42836: -- 5132302
42837: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42838: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42839:
42840: END IF;
42841:
42842: -- 4955764
42839:
42840: END IF;
42841:
42842: -- 4955764
42843: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42844: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42845:
42846:
42847: XLA_AE_LINES_PKG.ValidateCurrentLine;
42843: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42844: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42845:
42846:
42847: XLA_AE_LINES_PKG.ValidateCurrentLine;
42848: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42849:
42850: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42851: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42844: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42845:
42846:
42847: XLA_AE_LINES_PKG.ValidateCurrentLine;
42848: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42849:
42850: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42851: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42852: ,p_balance_type_code => l_balance_type_code);
42997: --
42998: -- bulk performance
42999: --
43000: l_balance_type_code VARCHAR2(1);
43001: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
43002: l_log_module VARCHAR2(240);
43003:
43004: --
43005: -- Upgrade strategy
43067: ') = 'N'
43068: THEN
43069:
43070: --
43071: XLA_AE_LINES_PKG.SetNewLine;
43072:
43073: p_balance_type_code := l_balance_type_code;
43074: -- set the flag so later we will know whether the gain loss line needs to be created
43075:
43079:
43080: --
43081: -- bulk performance
43082: --
43083: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
43084: p_header_num => 0); -- 4262811
43085: --
43086: -- set accounting line options
43087: --
43084: p_header_num => 0); -- 4262811
43085: --
43086: -- set accounting line options
43087: --
43088: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
43089: p_natural_side_code => 'C'
43090: , p_gain_or_loss_flag => 'N'
43091: , p_gl_transfer_mode_code => 'S'
43092: , p_acct_entry_type_code => 'A'
43098: --
43099: --
43100: -- set accounting line type info
43101: --
43102: xla_ae_lines_pkg.SetAcctLineType
43103: (p_component_type => l_component_type
43104: ,p_event_type_code => l_event_type_code
43105: ,p_line_definition_owner_code => l_line_definition_owner_code
43106: ,p_line_definition_code => l_line_definition_code
43112: ,p_event_class_code => l_event_class_code);
43113: --
43114: -- set accounting class
43115: --
43116: xla_ae_lines_pkg.SetAcctClass(
43117: p_accounting_class_code => 'EDISC'
43118: , p_ae_header_id => l_ae_header_id
43119: );
43120:
43120:
43121: --
43122: -- set rounding class
43123: --
43124: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43125: 'RECEIVABLE';
43126:
43127: --
43128: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43124: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43125: 'RECEIVABLE';
43126:
43127: --
43128: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43129: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43130: --
43131: -- bulk performance
43132: --
43125: 'RECEIVABLE';
43126:
43127: --
43128: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43129: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43130: --
43131: -- bulk performance
43132: --
43133: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43129: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43130: --
43131: -- bulk performance
43132: --
43133: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43134:
43135: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43136: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43137:
43131: -- bulk performance
43132: --
43133: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43134:
43135: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43136: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43137:
43138: -- 4955764
43139: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43135: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43136: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43137:
43138: -- 4955764
43139: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43140: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
43141:
43142: -- 4458381 Public Sector Enh
43143:
43179: l_rec_acct_attrs.array_num_value(15) := p_source_63;
43180: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
43181: l_rec_acct_attrs.array_char_value(16) := p_source_64;
43182:
43183: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43184: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43185:
43186: ---------------------------------------------------------------------------------------------------------------
43187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43180: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
43181: l_rec_acct_attrs.array_char_value(16) := p_source_64;
43182:
43183: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43184: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43185:
43186: ---------------------------------------------------------------------------------------------------------------
43187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43188: ---------------------------------------------------------------------------------------------------------------
43183: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43184: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43185:
43186: ---------------------------------------------------------------------------------------------------------------
43187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43188: ---------------------------------------------------------------------------------------------------------------
43189: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43190:
43191: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43185:
43186: ---------------------------------------------------------------------------------------------------------------
43187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43188: ---------------------------------------------------------------------------------------------------------------
43189: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43190:
43191: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43192: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43193:
43187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43188: ---------------------------------------------------------------------------------------------------------------
43189: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43190:
43191: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43192: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43193:
43194: IF xla_accounting_cache_pkg.GetValueChar
43195: (p_source_code => 'LEDGER_CATEGORY_CODE'
43188: ---------------------------------------------------------------------------------------------------------------
43189: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43190:
43191: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43192: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43193:
43194: IF xla_accounting_cache_pkg.GetValueChar
43195: (p_source_code => 'LEDGER_CATEGORY_CODE'
43196: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
43199: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
43200: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
43201: )
43202: THEN
43203: xla_ae_lines_pkg.BflowUpgEntry
43204: (p_business_method_code => l_bflow_method_code
43205: ,p_business_class_code => l_bflow_class_code
43206: ,p_balance_type => l_balance_type_code);
43207: ELSE
43216: --
43217: -- call description
43218: --
43219:
43220: xla_ae_lines_pkg.SetLineDescription(
43221: p_ae_header_id => l_ae_header_id
43222: ,p_description => Description_1 (
43223: p_application_id => p_application_id
43224: , p_ae_header_id => l_ae_header_id
43248: , x_value_type_code => l_adr_value_type_code
43249: , p_side => 'NA'
43250: );
43251:
43252: xla_ae_lines_pkg.set_ccid(
43253: p_code_combination_id => l_ccid
43254: , p_value_type_code => l_adr_value_type_code
43255: , p_transaction_coa_id => l_adr_transaction_coa_id
43256: , p_accounting_coa_id => l_adr_accounting_coa_id
43281: );
43282:
43283: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
43284:
43285: xla_ae_lines_pkg.set_segment(
43286: p_to_segment_code => 'GL_BALANCING'
43287: , p_segment_value => l_segment
43288: , p_from_segment_code => l_adr_value_segment_code
43289: , p_from_combination_id => l_adr_value_combination_id
43325: xla_accounting_err_pkg.build_message
43326: (p_appli_s_name => 'XLA'
43327: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
43328: ,p_token_1 => 'LINE_NUMBER'
43329: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
43330: ,p_token_2 => 'LINE_TYPE_NAME'
43331: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
43332: l_component_type
43333: ,l_component_code
43361: --
43362: --
43363: ------------------------------------------------------------------------------------------------
43364: -- 4219869 Business Flow
43365: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43366: -- Prior Entry. Currently, the following code is always generated.
43367: ------------------------------------------------------------------------------------------------
43368: XLA_AE_LINES_PKG.ValidateCurrentLine;
43369:
43364: -- 4219869 Business Flow
43365: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43366: -- Prior Entry. Currently, the following code is always generated.
43367: ------------------------------------------------------------------------------------------------
43368: XLA_AE_LINES_PKG.ValidateCurrentLine;
43369:
43370: ------------------------------------------------------------------------------------
43371: -- 4219869 Business Flow
43372: -- Populated credit and debit amounts -- Need to generate this within IF
43370: ------------------------------------------------------------------------------------
43371: -- 4219869 Business Flow
43372: -- Populated credit and debit amounts -- Need to generate this within IF
43373: ------------------------------------------------------------------------------------
43374: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43375:
43376: ----------------------------------------------------------------------------------
43377: -- 4219869 Business Flow
43378: -- Update journal entry status -- Need to generate this within IF
43402: -- To allow MPA report to determine if it should generate report process
43403: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43404: ------------------------------------------------------------------------------------------
43405:
43406: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43407: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43408: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43409: -- call ADRs
43410: -- Bug 4922099
43403: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43404: ------------------------------------------------------------------------------------------
43405:
43406: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43407: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43408: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43409: -- call ADRs
43410: -- Bug 4922099
43411: --
43427: , x_value_type_code => l_adr_value_type_code
43428: , p_side => 'NA'
43429: );
43430:
43431: xla_ae_lines_pkg.set_ccid(
43432: p_code_combination_id => l_ccid
43433: , p_value_type_code => l_adr_value_type_code
43434: , p_transaction_coa_id => l_adr_transaction_coa_id
43435: , p_accounting_coa_id => l_adr_accounting_coa_id
43460: );
43461:
43462: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
43463:
43464: xla_ae_lines_pkg.set_segment(
43465: p_to_segment_code => 'GL_BALANCING'
43466: , p_segment_value => l_segment
43467: , p_from_segment_code => l_adr_value_segment_code
43468: , p_from_combination_id => l_adr_value_combination_id
43491:
43492: --
43493: -- Update the line information that should be overwritten
43494: --
43495: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43496: p_header_num => 1);
43497: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43498:
43499: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43493: -- Update the line information that should be overwritten
43494: --
43495: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43496: p_header_num => 1);
43497: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43498:
43499: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43500:
43501: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43495: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43496: p_header_num => 1);
43497: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43498:
43499: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43500:
43501: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43502: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43503: END IF;
43498:
43499: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43500:
43501: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43502: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43503: END IF;
43504:
43505: --
43506: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43505: --
43506: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43507: --
43508: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
43509: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
43510: ELSE
43511: ---------------------------------------------------------------------------------------------------
43512: -- 4262811a Switch Sign
43513: ---------------------------------------------------------------------------------------------------
43510: ELSE
43511: ---------------------------------------------------------------------------------------------------
43512: -- 4262811a Switch Sign
43513: ---------------------------------------------------------------------------------------------------
43514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43511: ---------------------------------------------------------------------------------------------------
43512: -- 4262811a Switch Sign
43513: ---------------------------------------------------------------------------------------------------
43514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43519: -- 5132302
43512: -- 4262811a Switch Sign
43513: ---------------------------------------------------------------------------------------------------
43514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43519: -- 5132302
43520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43513: ---------------------------------------------------------------------------------------------------
43514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43519: -- 5132302
43520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43521: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43519: -- 5132302
43520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43521: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43522:
43516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43519: -- 5132302
43520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43521: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43522:
43523: END IF;
43524:
43517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43519: -- 5132302
43520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43521: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43522:
43523: END IF;
43524:
43525: -- 4955764
43522:
43523: END IF;
43524:
43525: -- 4955764
43526: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43527: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43528:
43529:
43530: XLA_AE_LINES_PKG.ValidateCurrentLine;
43526: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43527: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43528:
43529:
43530: XLA_AE_LINES_PKG.ValidateCurrentLine;
43531: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43532:
43533: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43534: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43527: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43528:
43529:
43530: XLA_AE_LINES_PKG.ValidateCurrentLine;
43531: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43532:
43533: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43534: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43535: ,p_balance_type_code => l_balance_type_code);
43676: --
43677: -- bulk performance
43678: --
43679: l_balance_type_code VARCHAR2(1);
43680: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
43681: l_log_module VARCHAR2(240);
43682:
43683: --
43684: -- Upgrade strategy
43748: ') = 'EXCH_GAIN'
43749: THEN
43750:
43751: --
43752: XLA_AE_LINES_PKG.SetNewLine;
43753:
43754: p_balance_type_code := l_balance_type_code;
43755: -- set the flag so later we will know whether the gain loss line needs to be created
43756:
43760:
43761: --
43762: -- bulk performance
43763: --
43764: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
43765: p_header_num => 0); -- 4262811
43766: --
43767: -- set accounting line options
43768: --
43765: p_header_num => 0); -- 4262811
43766: --
43767: -- set accounting line options
43768: --
43769: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
43770: p_natural_side_code => 'C'
43771: , p_gain_or_loss_flag => 'Y'
43772: , p_gl_transfer_mode_code => 'S'
43773: , p_acct_entry_type_code => 'A'
43779: --
43780: --
43781: -- set accounting line type info
43782: --
43783: xla_ae_lines_pkg.SetAcctLineType
43784: (p_component_type => l_component_type
43785: ,p_event_type_code => l_event_type_code
43786: ,p_line_definition_owner_code => l_line_definition_owner_code
43787: ,p_line_definition_code => l_line_definition_code
43793: ,p_event_class_code => l_event_class_code);
43794: --
43795: -- set accounting class
43796: --
43797: xla_ae_lines_pkg.SetAcctClass(
43798: p_accounting_class_code => 'GAIN'
43799: , p_ae_header_id => l_ae_header_id
43800: );
43801:
43801:
43802: --
43803: -- set rounding class
43804: --
43805: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43806: 'RECEIVABLE';
43807:
43808: --
43809: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43805: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43806: 'RECEIVABLE';
43807:
43808: --
43809: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43810: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43811: --
43812: -- bulk performance
43813: --
43806: 'RECEIVABLE';
43807:
43808: --
43809: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43810: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43811: --
43812: -- bulk performance
43813: --
43814: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43810: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43811: --
43812: -- bulk performance
43813: --
43814: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43815:
43816: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43817: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43818:
43812: -- bulk performance
43813: --
43814: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43815:
43816: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43817: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43818:
43819: -- 4955764
43820: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43816: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43817: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43818:
43819: -- 4955764
43820: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43821: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
43822:
43823: -- 4458381 Public Sector Enh
43824:
43860: l_rec_acct_attrs.array_num_value(15) := p_source_63;
43861: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
43862: l_rec_acct_attrs.array_char_value(16) := p_source_64;
43863:
43864: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43865: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43866:
43867: ---------------------------------------------------------------------------------------------------------------
43868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43861: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
43862: l_rec_acct_attrs.array_char_value(16) := p_source_64;
43863:
43864: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43865: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43866:
43867: ---------------------------------------------------------------------------------------------------------------
43868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43869: ---------------------------------------------------------------------------------------------------------------
43864: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43865: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43866:
43867: ---------------------------------------------------------------------------------------------------------------
43868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43869: ---------------------------------------------------------------------------------------------------------------
43870: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43871:
43872: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43866:
43867: ---------------------------------------------------------------------------------------------------------------
43868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43869: ---------------------------------------------------------------------------------------------------------------
43870: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43871:
43872: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43873: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43874:
43868: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43869: ---------------------------------------------------------------------------------------------------------------
43870: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43871:
43872: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43873: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43874:
43875: IF xla_accounting_cache_pkg.GetValueChar
43876: (p_source_code => 'LEDGER_CATEGORY_CODE'
43869: ---------------------------------------------------------------------------------------------------------------
43870: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43871:
43872: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43873: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43874:
43875: IF xla_accounting_cache_pkg.GetValueChar
43876: (p_source_code => 'LEDGER_CATEGORY_CODE'
43877: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
43880: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
43881: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
43882: )
43883: THEN
43884: xla_ae_lines_pkg.BflowUpgEntry
43885: (p_business_method_code => l_bflow_method_code
43886: ,p_business_class_code => l_bflow_class_code
43887: ,p_balance_type => l_balance_type_code);
43888: ELSE
43920: , x_value_type_code => l_adr_value_type_code
43921: , p_side => 'NA'
43922: );
43923:
43924: xla_ae_lines_pkg.set_ccid(
43925: p_code_combination_id => l_ccid
43926: , p_value_type_code => l_adr_value_type_code
43927: , p_transaction_coa_id => l_adr_transaction_coa_id
43928: , p_accounting_coa_id => l_adr_accounting_coa_id
43956: xla_accounting_err_pkg.build_message
43957: (p_appli_s_name => 'XLA'
43958: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
43959: ,p_token_1 => 'LINE_NUMBER'
43960: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
43961: ,p_token_2 => 'LINE_TYPE_NAME'
43962: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
43963: l_component_type
43964: ,l_component_code
43992: --
43993: --
43994: ------------------------------------------------------------------------------------------------
43995: -- 4219869 Business Flow
43996: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43997: -- Prior Entry. Currently, the following code is always generated.
43998: ------------------------------------------------------------------------------------------------
43999: XLA_AE_LINES_PKG.ValidateCurrentLine;
44000:
43995: -- 4219869 Business Flow
43996: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43997: -- Prior Entry. Currently, the following code is always generated.
43998: ------------------------------------------------------------------------------------------------
43999: XLA_AE_LINES_PKG.ValidateCurrentLine;
44000:
44001: ------------------------------------------------------------------------------------
44002: -- 4219869 Business Flow
44003: -- Populated credit and debit amounts -- Need to generate this within IF
44001: ------------------------------------------------------------------------------------
44002: -- 4219869 Business Flow
44003: -- Populated credit and debit amounts -- Need to generate this within IF
44004: ------------------------------------------------------------------------------------
44005: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44006:
44007: ----------------------------------------------------------------------------------
44008: -- 4219869 Business Flow
44009: -- Update journal entry status -- Need to generate this within IF
44033: -- To allow MPA report to determine if it should generate report process
44034: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44035: ------------------------------------------------------------------------------------------
44036:
44037: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44038: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44039: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44040: -- call ADRs
44041: -- Bug 4922099
44034: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44035: ------------------------------------------------------------------------------------------
44036:
44037: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44038: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44039: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44040: -- call ADRs
44041: -- Bug 4922099
44042: --
44058: , x_value_type_code => l_adr_value_type_code
44059: , p_side => 'NA'
44060: );
44061:
44062: xla_ae_lines_pkg.set_ccid(
44063: p_code_combination_id => l_ccid
44064: , p_value_type_code => l_adr_value_type_code
44065: , p_transaction_coa_id => l_adr_transaction_coa_id
44066: , p_accounting_coa_id => l_adr_accounting_coa_id
44081:
44082: --
44083: -- Update the line information that should be overwritten
44084: --
44085: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44086: p_header_num => 1);
44087: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44088:
44089: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44083: -- Update the line information that should be overwritten
44084: --
44085: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44086: p_header_num => 1);
44087: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44088:
44089: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44090:
44091: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44085: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44086: p_header_num => 1);
44087: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44088:
44089: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44090:
44091: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44092: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44093: END IF;
44088:
44089: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44090:
44091: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44092: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44093: END IF;
44094:
44095: --
44096: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44095: --
44096: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44097: --
44098: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
44099: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
44100: ELSE
44101: ---------------------------------------------------------------------------------------------------
44102: -- 4262811a Switch Sign
44103: ---------------------------------------------------------------------------------------------------
44100: ELSE
44101: ---------------------------------------------------------------------------------------------------
44102: -- 4262811a Switch Sign
44103: ---------------------------------------------------------------------------------------------------
44104: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44105: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44106: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44107: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44108: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44101: ---------------------------------------------------------------------------------------------------
44102: -- 4262811a Switch Sign
44103: ---------------------------------------------------------------------------------------------------
44104: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44105: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44106: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44107: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44108: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44109: -- 5132302
44102: -- 4262811a Switch Sign
44103: ---------------------------------------------------------------------------------------------------
44104: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44105: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44106: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44107: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44108: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44109: -- 5132302
44110: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44103: ---------------------------------------------------------------------------------------------------
44104: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44105: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44106: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44107: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44108: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44109: -- 5132302
44110: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44111: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44104: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44105: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44106: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44107: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44108: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44109: -- 5132302
44110: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44111: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44112:
44106: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44107: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44108: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44109: -- 5132302
44110: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44111: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44112:
44113: END IF;
44114:
44107: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44108: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44109: -- 5132302
44110: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44111: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44112:
44113: END IF;
44114:
44115: -- 4955764
44112:
44113: END IF;
44114:
44115: -- 4955764
44116: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44117: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44118:
44119:
44120: XLA_AE_LINES_PKG.ValidateCurrentLine;
44116: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44117: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44118:
44119:
44120: XLA_AE_LINES_PKG.ValidateCurrentLine;
44121: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44122:
44123: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44124: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44117: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44118:
44119:
44120: XLA_AE_LINES_PKG.ValidateCurrentLine;
44121: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44122:
44123: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44124: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44125: ,p_balance_type_code => l_balance_type_code);
44266: --
44267: -- bulk performance
44268: --
44269: l_balance_type_code VARCHAR2(1);
44270: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
44271: l_log_module VARCHAR2(240);
44272:
44273: --
44274: -- Upgrade strategy
44338: ') = 'EXCH_LOSS'
44339: THEN
44340:
44341: --
44342: XLA_AE_LINES_PKG.SetNewLine;
44343:
44344: p_balance_type_code := l_balance_type_code;
44345: -- set the flag so later we will know whether the gain loss line needs to be created
44346:
44350:
44351: --
44352: -- bulk performance
44353: --
44354: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
44355: p_header_num => 0); -- 4262811
44356: --
44357: -- set accounting line options
44358: --
44355: p_header_num => 0); -- 4262811
44356: --
44357: -- set accounting line options
44358: --
44359: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
44360: p_natural_side_code => 'C'
44361: , p_gain_or_loss_flag => 'Y'
44362: , p_gl_transfer_mode_code => 'S'
44363: , p_acct_entry_type_code => 'A'
44369: --
44370: --
44371: -- set accounting line type info
44372: --
44373: xla_ae_lines_pkg.SetAcctLineType
44374: (p_component_type => l_component_type
44375: ,p_event_type_code => l_event_type_code
44376: ,p_line_definition_owner_code => l_line_definition_owner_code
44377: ,p_line_definition_code => l_line_definition_code
44383: ,p_event_class_code => l_event_class_code);
44384: --
44385: -- set accounting class
44386: --
44387: xla_ae_lines_pkg.SetAcctClass(
44388: p_accounting_class_code => 'LOSS'
44389: , p_ae_header_id => l_ae_header_id
44390: );
44391:
44391:
44392: --
44393: -- set rounding class
44394: --
44395: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44396: 'RECEIVABLE';
44397:
44398: --
44399: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44395: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44396: 'RECEIVABLE';
44397:
44398: --
44399: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44400: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44401: --
44402: -- bulk performance
44403: --
44396: 'RECEIVABLE';
44397:
44398: --
44399: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44400: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44401: --
44402: -- bulk performance
44403: --
44404: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44400: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44401: --
44402: -- bulk performance
44403: --
44404: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44405:
44406: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44407: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44408:
44402: -- bulk performance
44403: --
44404: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44405:
44406: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44407: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44408:
44409: -- 4955764
44410: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44406: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44407: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44408:
44409: -- 4955764
44410: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44411: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
44412:
44413: -- 4458381 Public Sector Enh
44414:
44450: l_rec_acct_attrs.array_num_value(15) := p_source_63;
44451: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
44452: l_rec_acct_attrs.array_char_value(16) := p_source_64;
44453:
44454: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44455: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44456:
44457: ---------------------------------------------------------------------------------------------------------------
44458: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44451: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
44452: l_rec_acct_attrs.array_char_value(16) := p_source_64;
44453:
44454: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44455: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44456:
44457: ---------------------------------------------------------------------------------------------------------------
44458: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44459: ---------------------------------------------------------------------------------------------------------------
44454: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44455: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44456:
44457: ---------------------------------------------------------------------------------------------------------------
44458: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44459: ---------------------------------------------------------------------------------------------------------------
44460: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44461:
44462: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44456:
44457: ---------------------------------------------------------------------------------------------------------------
44458: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44459: ---------------------------------------------------------------------------------------------------------------
44460: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44461:
44462: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44463: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44464:
44458: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44459: ---------------------------------------------------------------------------------------------------------------
44460: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44461:
44462: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44463: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44464:
44465: IF xla_accounting_cache_pkg.GetValueChar
44466: (p_source_code => 'LEDGER_CATEGORY_CODE'
44459: ---------------------------------------------------------------------------------------------------------------
44460: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44461:
44462: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44463: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44464:
44465: IF xla_accounting_cache_pkg.GetValueChar
44466: (p_source_code => 'LEDGER_CATEGORY_CODE'
44467: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
44470: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
44471: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
44472: )
44473: THEN
44474: xla_ae_lines_pkg.BflowUpgEntry
44475: (p_business_method_code => l_bflow_method_code
44476: ,p_business_class_code => l_bflow_class_code
44477: ,p_balance_type => l_balance_type_code);
44478: ELSE
44510: , x_value_type_code => l_adr_value_type_code
44511: , p_side => 'NA'
44512: );
44513:
44514: xla_ae_lines_pkg.set_ccid(
44515: p_code_combination_id => l_ccid
44516: , p_value_type_code => l_adr_value_type_code
44517: , p_transaction_coa_id => l_adr_transaction_coa_id
44518: , p_accounting_coa_id => l_adr_accounting_coa_id
44546: xla_accounting_err_pkg.build_message
44547: (p_appli_s_name => 'XLA'
44548: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
44549: ,p_token_1 => 'LINE_NUMBER'
44550: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
44551: ,p_token_2 => 'LINE_TYPE_NAME'
44552: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
44553: l_component_type
44554: ,l_component_code
44582: --
44583: --
44584: ------------------------------------------------------------------------------------------------
44585: -- 4219869 Business Flow
44586: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44587: -- Prior Entry. Currently, the following code is always generated.
44588: ------------------------------------------------------------------------------------------------
44589: XLA_AE_LINES_PKG.ValidateCurrentLine;
44590:
44585: -- 4219869 Business Flow
44586: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44587: -- Prior Entry. Currently, the following code is always generated.
44588: ------------------------------------------------------------------------------------------------
44589: XLA_AE_LINES_PKG.ValidateCurrentLine;
44590:
44591: ------------------------------------------------------------------------------------
44592: -- 4219869 Business Flow
44593: -- Populated credit and debit amounts -- Need to generate this within IF
44591: ------------------------------------------------------------------------------------
44592: -- 4219869 Business Flow
44593: -- Populated credit and debit amounts -- Need to generate this within IF
44594: ------------------------------------------------------------------------------------
44595: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44596:
44597: ----------------------------------------------------------------------------------
44598: -- 4219869 Business Flow
44599: -- Update journal entry status -- Need to generate this within IF
44623: -- To allow MPA report to determine if it should generate report process
44624: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44625: ------------------------------------------------------------------------------------------
44626:
44627: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44628: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44629: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44630: -- call ADRs
44631: -- Bug 4922099
44624: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44625: ------------------------------------------------------------------------------------------
44626:
44627: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44628: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44629: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44630: -- call ADRs
44631: -- Bug 4922099
44632: --
44648: , x_value_type_code => l_adr_value_type_code
44649: , p_side => 'NA'
44650: );
44651:
44652: xla_ae_lines_pkg.set_ccid(
44653: p_code_combination_id => l_ccid
44654: , p_value_type_code => l_adr_value_type_code
44655: , p_transaction_coa_id => l_adr_transaction_coa_id
44656: , p_accounting_coa_id => l_adr_accounting_coa_id
44671:
44672: --
44673: -- Update the line information that should be overwritten
44674: --
44675: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44676: p_header_num => 1);
44677: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44678:
44679: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44673: -- Update the line information that should be overwritten
44674: --
44675: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44676: p_header_num => 1);
44677: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44678:
44679: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44680:
44681: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44675: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44676: p_header_num => 1);
44677: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44678:
44679: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44680:
44681: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44682: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44683: END IF;
44678:
44679: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44680:
44681: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44682: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44683: END IF;
44684:
44685: --
44686: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44685: --
44686: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44687: --
44688: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
44689: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
44690: ELSE
44691: ---------------------------------------------------------------------------------------------------
44692: -- 4262811a Switch Sign
44693: ---------------------------------------------------------------------------------------------------
44690: ELSE
44691: ---------------------------------------------------------------------------------------------------
44692: -- 4262811a Switch Sign
44693: ---------------------------------------------------------------------------------------------------
44694: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44695: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44696: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44697: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44698: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44691: ---------------------------------------------------------------------------------------------------
44692: -- 4262811a Switch Sign
44693: ---------------------------------------------------------------------------------------------------
44694: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44695: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44696: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44697: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44698: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44699: -- 5132302
44692: -- 4262811a Switch Sign
44693: ---------------------------------------------------------------------------------------------------
44694: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44695: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44696: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44697: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44698: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44699: -- 5132302
44700: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44693: ---------------------------------------------------------------------------------------------------
44694: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44695: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44696: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44697: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44698: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44699: -- 5132302
44700: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44701: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44694: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44695: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44696: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44697: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44698: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44699: -- 5132302
44700: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44701: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44702:
44696: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44697: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44698: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44699: -- 5132302
44700: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44701: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44702:
44703: END IF;
44704:
44697: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44698: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44699: -- 5132302
44700: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44701: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44702:
44703: END IF;
44704:
44705: -- 4955764
44702:
44703: END IF;
44704:
44705: -- 4955764
44706: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44707: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44708:
44709:
44710: XLA_AE_LINES_PKG.ValidateCurrentLine;
44706: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44707: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44708:
44709:
44710: XLA_AE_LINES_PKG.ValidateCurrentLine;
44711: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44712:
44713: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44714: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44707: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44708:
44709:
44710: XLA_AE_LINES_PKG.ValidateCurrentLine;
44711: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44712:
44713: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44714: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44715: ,p_balance_type_code => l_balance_type_code);
44860: --
44861: -- bulk performance
44862: --
44863: l_balance_type_code VARCHAR2(1);
44864: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
44865: l_log_module VARCHAR2(240);
44866:
44867: --
44868: -- Upgrade strategy
44932: ') = 'N'
44933: THEN
44934:
44935: --
44936: XLA_AE_LINES_PKG.SetNewLine;
44937:
44938: p_balance_type_code := l_balance_type_code;
44939: -- set the flag so later we will know whether the gain loss line needs to be created
44940:
44944:
44945: --
44946: -- bulk performance
44947: --
44948: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
44949: p_header_num => 0); -- 4262811
44950: --
44951: -- set accounting line options
44952: --
44949: p_header_num => 0); -- 4262811
44950: --
44951: -- set accounting line options
44952: --
44953: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
44954: p_natural_side_code => 'C'
44955: , p_gain_or_loss_flag => 'N'
44956: , p_gl_transfer_mode_code => 'S'
44957: , p_acct_entry_type_code => 'A'
44963: --
44964: --
44965: -- set accounting line type info
44966: --
44967: xla_ae_lines_pkg.SetAcctLineType
44968: (p_component_type => l_component_type
44969: ,p_event_type_code => l_event_type_code
44970: ,p_line_definition_owner_code => l_line_definition_owner_code
44971: ,p_line_definition_code => l_line_definition_code
44977: ,p_event_class_code => l_event_class_code);
44978: --
44979: -- set accounting class
44980: --
44981: xla_ae_lines_pkg.SetAcctClass(
44982: p_accounting_class_code => 'FACTOR'
44983: , p_ae_header_id => l_ae_header_id
44984: );
44985:
44985:
44986: --
44987: -- set rounding class
44988: --
44989: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44990: 'RECEIVABLE';
44991:
44992: --
44993: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44989: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44990: 'RECEIVABLE';
44991:
44992: --
44993: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44994: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44995: --
44996: -- bulk performance
44997: --
44990: 'RECEIVABLE';
44991:
44992: --
44993: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44994: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44995: --
44996: -- bulk performance
44997: --
44998: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44994: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44995: --
44996: -- bulk performance
44997: --
44998: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44999:
45000: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45001: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45002:
44996: -- bulk performance
44997: --
44998: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44999:
45000: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45001: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45002:
45003: -- 4955764
45004: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45000: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45001: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45002:
45003: -- 4955764
45004: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45005: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
45006:
45007: -- 4458381 Public Sector Enh
45008:
45044: l_rec_acct_attrs.array_num_value(15) := p_source_63;
45045: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45046: l_rec_acct_attrs.array_char_value(16) := p_source_64;
45047:
45048: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45049: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45050:
45051: ---------------------------------------------------------------------------------------------------------------
45052: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45045: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45046: l_rec_acct_attrs.array_char_value(16) := p_source_64;
45047:
45048: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45049: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45050:
45051: ---------------------------------------------------------------------------------------------------------------
45052: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45053: ---------------------------------------------------------------------------------------------------------------
45048: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45049: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45050:
45051: ---------------------------------------------------------------------------------------------------------------
45052: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45053: ---------------------------------------------------------------------------------------------------------------
45054: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45055:
45056: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45050:
45051: ---------------------------------------------------------------------------------------------------------------
45052: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45053: ---------------------------------------------------------------------------------------------------------------
45054: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45055:
45056: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45057: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45058:
45052: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45053: ---------------------------------------------------------------------------------------------------------------
45054: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45055:
45056: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45057: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45058:
45059: IF xla_accounting_cache_pkg.GetValueChar
45060: (p_source_code => 'LEDGER_CATEGORY_CODE'
45053: ---------------------------------------------------------------------------------------------------------------
45054: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45055:
45056: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45057: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45058:
45059: IF xla_accounting_cache_pkg.GetValueChar
45060: (p_source_code => 'LEDGER_CATEGORY_CODE'
45061: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
45064: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
45065: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
45066: )
45067: THEN
45068: xla_ae_lines_pkg.BflowUpgEntry
45069: (p_business_method_code => l_bflow_method_code
45070: ,p_business_class_code => l_bflow_class_code
45071: ,p_balance_type => l_balance_type_code);
45072: ELSE
45104: , x_value_type_code => l_adr_value_type_code
45105: , p_side => 'NA'
45106: );
45107:
45108: xla_ae_lines_pkg.set_ccid(
45109: p_code_combination_id => l_ccid
45110: , p_value_type_code => l_adr_value_type_code
45111: , p_transaction_coa_id => l_adr_transaction_coa_id
45112: , p_accounting_coa_id => l_adr_accounting_coa_id
45140: xla_accounting_err_pkg.build_message
45141: (p_appli_s_name => 'XLA'
45142: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
45143: ,p_token_1 => 'LINE_NUMBER'
45144: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
45145: ,p_token_2 => 'LINE_TYPE_NAME'
45146: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
45147: l_component_type
45148: ,l_component_code
45176: --
45177: --
45178: ------------------------------------------------------------------------------------------------
45179: -- 4219869 Business Flow
45180: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45181: -- Prior Entry. Currently, the following code is always generated.
45182: ------------------------------------------------------------------------------------------------
45183: XLA_AE_LINES_PKG.ValidateCurrentLine;
45184:
45179: -- 4219869 Business Flow
45180: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45181: -- Prior Entry. Currently, the following code is always generated.
45182: ------------------------------------------------------------------------------------------------
45183: XLA_AE_LINES_PKG.ValidateCurrentLine;
45184:
45185: ------------------------------------------------------------------------------------
45186: -- 4219869 Business Flow
45187: -- Populated credit and debit amounts -- Need to generate this within IF
45185: ------------------------------------------------------------------------------------
45186: -- 4219869 Business Flow
45187: -- Populated credit and debit amounts -- Need to generate this within IF
45188: ------------------------------------------------------------------------------------
45189: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45190:
45191: ----------------------------------------------------------------------------------
45192: -- 4219869 Business Flow
45193: -- Update journal entry status -- Need to generate this within IF
45217: -- To allow MPA report to determine if it should generate report process
45218: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45219: ------------------------------------------------------------------------------------------
45220:
45221: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45222: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45223: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45224: -- call ADRs
45225: -- Bug 4922099
45218: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45219: ------------------------------------------------------------------------------------------
45220:
45221: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45222: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45223: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45224: -- call ADRs
45225: -- Bug 4922099
45226: --
45242: , x_value_type_code => l_adr_value_type_code
45243: , p_side => 'NA'
45244: );
45245:
45246: xla_ae_lines_pkg.set_ccid(
45247: p_code_combination_id => l_ccid
45248: , p_value_type_code => l_adr_value_type_code
45249: , p_transaction_coa_id => l_adr_transaction_coa_id
45250: , p_accounting_coa_id => l_adr_accounting_coa_id
45265:
45266: --
45267: -- Update the line information that should be overwritten
45268: --
45269: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45270: p_header_num => 1);
45271: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45272:
45273: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45267: -- Update the line information that should be overwritten
45268: --
45269: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45270: p_header_num => 1);
45271: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45272:
45273: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45274:
45275: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45269: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45270: p_header_num => 1);
45271: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45272:
45273: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45274:
45275: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45276: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45277: END IF;
45272:
45273: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45274:
45275: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45276: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45277: END IF;
45278:
45279: --
45280: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45279: --
45280: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45281: --
45282: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
45283: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
45284: ELSE
45285: ---------------------------------------------------------------------------------------------------
45286: -- 4262811a Switch Sign
45287: ---------------------------------------------------------------------------------------------------
45284: ELSE
45285: ---------------------------------------------------------------------------------------------------
45286: -- 4262811a Switch Sign
45287: ---------------------------------------------------------------------------------------------------
45288: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45285: ---------------------------------------------------------------------------------------------------
45286: -- 4262811a Switch Sign
45287: ---------------------------------------------------------------------------------------------------
45288: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45293: -- 5132302
45286: -- 4262811a Switch Sign
45287: ---------------------------------------------------------------------------------------------------
45288: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45293: -- 5132302
45294: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45287: ---------------------------------------------------------------------------------------------------
45288: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45293: -- 5132302
45294: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45295: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45288: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45289: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45293: -- 5132302
45294: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45295: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45296:
45290: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45293: -- 5132302
45294: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45295: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45296:
45297: END IF;
45298:
45291: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45292: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45293: -- 5132302
45294: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45295: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45296:
45297: END IF;
45298:
45299: -- 4955764
45296:
45297: END IF;
45298:
45299: -- 4955764
45300: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45301: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45302:
45303:
45304: XLA_AE_LINES_PKG.ValidateCurrentLine;
45300: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45301: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45302:
45303:
45304: XLA_AE_LINES_PKG.ValidateCurrentLine;
45305: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45306:
45307: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45308: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45301: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45302:
45303:
45304: XLA_AE_LINES_PKG.ValidateCurrentLine;
45305: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45306:
45307: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45308: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45309: ,p_balance_type_code => l_balance_type_code);
45454: --
45455: -- bulk performance
45456: --
45457: l_balance_type_code VARCHAR2(1);
45458: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
45459: l_log_module VARCHAR2(240);
45460:
45461: --
45462: -- Upgrade strategy
45526: ') = 'N'
45527: THEN
45528:
45529: --
45530: XLA_AE_LINES_PKG.SetNewLine;
45531:
45532: p_balance_type_code := l_balance_type_code;
45533: -- set the flag so later we will know whether the gain loss line needs to be created
45534:
45538:
45539: --
45540: -- bulk performance
45541: --
45542: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
45543: p_header_num => 0); -- 4262811
45544: --
45545: -- set accounting line options
45546: --
45543: p_header_num => 0); -- 4262811
45544: --
45545: -- set accounting line options
45546: --
45547: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
45548: p_natural_side_code => 'C'
45549: , p_gain_or_loss_flag => 'N'
45550: , p_gl_transfer_mode_code => 'S'
45551: , p_acct_entry_type_code => 'A'
45557: --
45558: --
45559: -- set accounting line type info
45560: --
45561: xla_ae_lines_pkg.SetAcctLineType
45562: (p_component_type => l_component_type
45563: ,p_event_type_code => l_event_type_code
45564: ,p_line_definition_owner_code => l_line_definition_owner_code
45565: ,p_line_definition_code => l_line_definition_code
45571: ,p_event_class_code => l_event_class_code);
45572: --
45573: -- set accounting class
45574: --
45575: xla_ae_lines_pkg.SetAcctClass(
45576: p_accounting_class_code => 'FAC_BR'
45577: , p_ae_header_id => l_ae_header_id
45578: );
45579:
45579:
45580: --
45581: -- set rounding class
45582: --
45583: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45584: 'RECEIVABLE';
45585:
45586: --
45587: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45583: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45584: 'RECEIVABLE';
45585:
45586: --
45587: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45588: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45589: --
45590: -- bulk performance
45591: --
45584: 'RECEIVABLE';
45585:
45586: --
45587: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45588: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45589: --
45590: -- bulk performance
45591: --
45592: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45588: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45589: --
45590: -- bulk performance
45591: --
45592: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45593:
45594: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45595: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45596:
45590: -- bulk performance
45591: --
45592: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45593:
45594: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45595: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45596:
45597: -- 4955764
45598: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45594: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45595: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45596:
45597: -- 4955764
45598: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45599: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
45600:
45601: -- 4458381 Public Sector Enh
45602:
45638: l_rec_acct_attrs.array_num_value(15) := p_source_63;
45639: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45640: l_rec_acct_attrs.array_char_value(16) := p_source_64;
45641:
45642: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45643: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45644:
45645: ---------------------------------------------------------------------------------------------------------------
45646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45639: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45640: l_rec_acct_attrs.array_char_value(16) := p_source_64;
45641:
45642: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45643: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45644:
45645: ---------------------------------------------------------------------------------------------------------------
45646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45647: ---------------------------------------------------------------------------------------------------------------
45642: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45643: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45644:
45645: ---------------------------------------------------------------------------------------------------------------
45646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45647: ---------------------------------------------------------------------------------------------------------------
45648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45649:
45650: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45644:
45645: ---------------------------------------------------------------------------------------------------------------
45646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45647: ---------------------------------------------------------------------------------------------------------------
45648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45649:
45650: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45651: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45652:
45646: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45647: ---------------------------------------------------------------------------------------------------------------
45648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45649:
45650: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45651: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45652:
45653: IF xla_accounting_cache_pkg.GetValueChar
45654: (p_source_code => 'LEDGER_CATEGORY_CODE'
45647: ---------------------------------------------------------------------------------------------------------------
45648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45649:
45650: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45651: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45652:
45653: IF xla_accounting_cache_pkg.GetValueChar
45654: (p_source_code => 'LEDGER_CATEGORY_CODE'
45655: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
45658: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
45659: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
45660: )
45661: THEN
45662: xla_ae_lines_pkg.BflowUpgEntry
45663: (p_business_method_code => l_bflow_method_code
45664: ,p_business_class_code => l_bflow_class_code
45665: ,p_balance_type => l_balance_type_code);
45666: ELSE
45698: , x_value_type_code => l_adr_value_type_code
45699: , p_side => 'NA'
45700: );
45701:
45702: xla_ae_lines_pkg.set_ccid(
45703: p_code_combination_id => l_ccid
45704: , p_value_type_code => l_adr_value_type_code
45705: , p_transaction_coa_id => l_adr_transaction_coa_id
45706: , p_accounting_coa_id => l_adr_accounting_coa_id
45734: xla_accounting_err_pkg.build_message
45735: (p_appli_s_name => 'XLA'
45736: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
45737: ,p_token_1 => 'LINE_NUMBER'
45738: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
45739: ,p_token_2 => 'LINE_TYPE_NAME'
45740: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
45741: l_component_type
45742: ,l_component_code
45770: --
45771: --
45772: ------------------------------------------------------------------------------------------------
45773: -- 4219869 Business Flow
45774: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45775: -- Prior Entry. Currently, the following code is always generated.
45776: ------------------------------------------------------------------------------------------------
45777: XLA_AE_LINES_PKG.ValidateCurrentLine;
45778:
45773: -- 4219869 Business Flow
45774: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45775: -- Prior Entry. Currently, the following code is always generated.
45776: ------------------------------------------------------------------------------------------------
45777: XLA_AE_LINES_PKG.ValidateCurrentLine;
45778:
45779: ------------------------------------------------------------------------------------
45780: -- 4219869 Business Flow
45781: -- Populated credit and debit amounts -- Need to generate this within IF
45779: ------------------------------------------------------------------------------------
45780: -- 4219869 Business Flow
45781: -- Populated credit and debit amounts -- Need to generate this within IF
45782: ------------------------------------------------------------------------------------
45783: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45784:
45785: ----------------------------------------------------------------------------------
45786: -- 4219869 Business Flow
45787: -- Update journal entry status -- Need to generate this within IF
45811: -- To allow MPA report to determine if it should generate report process
45812: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45813: ------------------------------------------------------------------------------------------
45814:
45815: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45816: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45817: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45818: -- call ADRs
45819: -- Bug 4922099
45812: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45813: ------------------------------------------------------------------------------------------
45814:
45815: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45816: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45817: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45818: -- call ADRs
45819: -- Bug 4922099
45820: --
45836: , x_value_type_code => l_adr_value_type_code
45837: , p_side => 'NA'
45838: );
45839:
45840: xla_ae_lines_pkg.set_ccid(
45841: p_code_combination_id => l_ccid
45842: , p_value_type_code => l_adr_value_type_code
45843: , p_transaction_coa_id => l_adr_transaction_coa_id
45844: , p_accounting_coa_id => l_adr_accounting_coa_id
45859:
45860: --
45861: -- Update the line information that should be overwritten
45862: --
45863: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45864: p_header_num => 1);
45865: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45866:
45867: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45861: -- Update the line information that should be overwritten
45862: --
45863: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45864: p_header_num => 1);
45865: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45866:
45867: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45868:
45869: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45863: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45864: p_header_num => 1);
45865: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45866:
45867: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45868:
45869: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45870: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45871: END IF;
45866:
45867: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45868:
45869: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45870: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45871: END IF;
45872:
45873: --
45874: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45873: --
45874: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45875: --
45876: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
45877: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
45878: ELSE
45879: ---------------------------------------------------------------------------------------------------
45880: -- 4262811a Switch Sign
45881: ---------------------------------------------------------------------------------------------------
45878: ELSE
45879: ---------------------------------------------------------------------------------------------------
45880: -- 4262811a Switch Sign
45881: ---------------------------------------------------------------------------------------------------
45882: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45883: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45885: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45879: ---------------------------------------------------------------------------------------------------
45880: -- 4262811a Switch Sign
45881: ---------------------------------------------------------------------------------------------------
45882: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45883: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45885: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45887: -- 5132302
45880: -- 4262811a Switch Sign
45881: ---------------------------------------------------------------------------------------------------
45882: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45883: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45885: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45887: -- 5132302
45888: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45881: ---------------------------------------------------------------------------------------------------
45882: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45883: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45885: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45887: -- 5132302
45888: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45889: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45882: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45883: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45885: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45887: -- 5132302
45888: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45889: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45890:
45884: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45885: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45887: -- 5132302
45888: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45889: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45890:
45891: END IF;
45892:
45885: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45886: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45887: -- 5132302
45888: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45889: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45890:
45891: END IF;
45892:
45893: -- 4955764
45890:
45891: END IF;
45892:
45893: -- 4955764
45894: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45895: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45896:
45897:
45898: XLA_AE_LINES_PKG.ValidateCurrentLine;
45894: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45895: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45896:
45897:
45898: XLA_AE_LINES_PKG.ValidateCurrentLine;
45899: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45900:
45901: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45902: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45895: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45896:
45897:
45898: XLA_AE_LINES_PKG.ValidateCurrentLine;
45899: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45900:
45901: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45902: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45903: ,p_balance_type_code => l_balance_type_code);
46048: --
46049: -- bulk performance
46050: --
46051: l_balance_type_code VARCHAR2(1);
46052: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
46053: l_log_module VARCHAR2(240);
46054:
46055: --
46056: -- Upgrade strategy
46122: ') = 'N'
46123: THEN
46124:
46125: --
46126: XLA_AE_LINES_PKG.SetNewLine;
46127:
46128: p_balance_type_code := l_balance_type_code;
46129: -- set the flag so later we will know whether the gain loss line needs to be created
46130:
46134:
46135: --
46136: -- bulk performance
46137: --
46138: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
46139: p_header_num => 0); -- 4262811
46140: --
46141: -- set accounting line options
46142: --
46139: p_header_num => 0); -- 4262811
46140: --
46141: -- set accounting line options
46142: --
46143: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
46144: p_natural_side_code => 'C'
46145: , p_gain_or_loss_flag => 'N'
46146: , p_gl_transfer_mode_code => 'S'
46147: , p_acct_entry_type_code => 'A'
46153: --
46154: --
46155: -- set accounting line type info
46156: --
46157: xla_ae_lines_pkg.SetAcctLineType
46158: (p_component_type => l_component_type
46159: ,p_event_type_code => l_event_type_code
46160: ,p_line_definition_owner_code => l_line_definition_owner_code
46161: ,p_line_definition_code => l_line_definition_code
46167: ,p_event_class_code => l_event_class_code);
46168: --
46169: -- set accounting class
46170: --
46171: xla_ae_lines_pkg.SetAcctClass(
46172: p_accounting_class_code => 'PMT_NET'
46173: , p_ae_header_id => l_ae_header_id
46174: );
46175:
46175:
46176: --
46177: -- set rounding class
46178: --
46179: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46180: 'RECEIVABLE';
46181:
46182: --
46183: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46179: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46180: 'RECEIVABLE';
46181:
46182: --
46183: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46184: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46185: --
46186: -- bulk performance
46187: --
46180: 'RECEIVABLE';
46181:
46182: --
46183: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46184: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46185: --
46186: -- bulk performance
46187: --
46188: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46184: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46185: --
46186: -- bulk performance
46187: --
46188: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46189:
46190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46191: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46192:
46186: -- bulk performance
46187: --
46188: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46189:
46190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46191: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46192:
46193: -- 4955764
46194: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46191: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46192:
46193: -- 4955764
46194: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46195: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
46196:
46197: -- 4458381 Public Sector Enh
46198:
46234: l_rec_acct_attrs.array_num_value(15) := p_source_63;
46235: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
46236: l_rec_acct_attrs.array_char_value(16) := p_source_64;
46237:
46238: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46239: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46240:
46241: ---------------------------------------------------------------------------------------------------------------
46242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46235: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
46236: l_rec_acct_attrs.array_char_value(16) := p_source_64;
46237:
46238: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46239: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46240:
46241: ---------------------------------------------------------------------------------------------------------------
46242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46243: ---------------------------------------------------------------------------------------------------------------
46238: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46239: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46240:
46241: ---------------------------------------------------------------------------------------------------------------
46242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46243: ---------------------------------------------------------------------------------------------------------------
46244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46245:
46246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46240:
46241: ---------------------------------------------------------------------------------------------------------------
46242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46243: ---------------------------------------------------------------------------------------------------------------
46244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46245:
46246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46247: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46248:
46242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46243: ---------------------------------------------------------------------------------------------------------------
46244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46245:
46246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46247: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46248:
46249: IF xla_accounting_cache_pkg.GetValueChar
46250: (p_source_code => 'LEDGER_CATEGORY_CODE'
46243: ---------------------------------------------------------------------------------------------------------------
46244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46245:
46246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46247: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46248:
46249: IF xla_accounting_cache_pkg.GetValueChar
46250: (p_source_code => 'LEDGER_CATEGORY_CODE'
46251: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
46254: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
46255: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
46256: )
46257: THEN
46258: xla_ae_lines_pkg.BflowUpgEntry
46259: (p_business_method_code => l_bflow_method_code
46260: ,p_business_class_code => l_bflow_class_code
46261: ,p_balance_type => l_balance_type_code);
46262: ELSE
46294: , x_value_type_code => l_adr_value_type_code
46295: , p_side => 'NA'
46296: );
46297:
46298: xla_ae_lines_pkg.set_ccid(
46299: p_code_combination_id => l_ccid
46300: , p_value_type_code => l_adr_value_type_code
46301: , p_transaction_coa_id => l_adr_transaction_coa_id
46302: , p_accounting_coa_id => l_adr_accounting_coa_id
46330: xla_accounting_err_pkg.build_message
46331: (p_appli_s_name => 'XLA'
46332: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
46333: ,p_token_1 => 'LINE_NUMBER'
46334: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
46335: ,p_token_2 => 'LINE_TYPE_NAME'
46336: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
46337: l_component_type
46338: ,l_component_code
46366: --
46367: --
46368: ------------------------------------------------------------------------------------------------
46369: -- 4219869 Business Flow
46370: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46371: -- Prior Entry. Currently, the following code is always generated.
46372: ------------------------------------------------------------------------------------------------
46373: XLA_AE_LINES_PKG.ValidateCurrentLine;
46374:
46369: -- 4219869 Business Flow
46370: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46371: -- Prior Entry. Currently, the following code is always generated.
46372: ------------------------------------------------------------------------------------------------
46373: XLA_AE_LINES_PKG.ValidateCurrentLine;
46374:
46375: ------------------------------------------------------------------------------------
46376: -- 4219869 Business Flow
46377: -- Populated credit and debit amounts -- Need to generate this within IF
46375: ------------------------------------------------------------------------------------
46376: -- 4219869 Business Flow
46377: -- Populated credit and debit amounts -- Need to generate this within IF
46378: ------------------------------------------------------------------------------------
46379: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46380:
46381: ----------------------------------------------------------------------------------
46382: -- 4219869 Business Flow
46383: -- Update journal entry status -- Need to generate this within IF
46407: -- To allow MPA report to determine if it should generate report process
46408: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46409: ------------------------------------------------------------------------------------------
46410:
46411: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46412: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46413: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46414: -- call ADRs
46415: -- Bug 4922099
46408: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46409: ------------------------------------------------------------------------------------------
46410:
46411: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46412: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46413: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46414: -- call ADRs
46415: -- Bug 4922099
46416: --
46432: , x_value_type_code => l_adr_value_type_code
46433: , p_side => 'NA'
46434: );
46435:
46436: xla_ae_lines_pkg.set_ccid(
46437: p_code_combination_id => l_ccid
46438: , p_value_type_code => l_adr_value_type_code
46439: , p_transaction_coa_id => l_adr_transaction_coa_id
46440: , p_accounting_coa_id => l_adr_accounting_coa_id
46455:
46456: --
46457: -- Update the line information that should be overwritten
46458: --
46459: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46460: p_header_num => 1);
46461: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46462:
46463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46457: -- Update the line information that should be overwritten
46458: --
46459: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46460: p_header_num => 1);
46461: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46462:
46463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46464:
46465: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46459: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46460: p_header_num => 1);
46461: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46462:
46463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46464:
46465: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46466: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46467: END IF;
46462:
46463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46464:
46465: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46466: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46467: END IF;
46468:
46469: --
46470: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46469: --
46470: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46471: --
46472: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
46473: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
46474: ELSE
46475: ---------------------------------------------------------------------------------------------------
46476: -- 4262811a Switch Sign
46477: ---------------------------------------------------------------------------------------------------
46474: ELSE
46475: ---------------------------------------------------------------------------------------------------
46476: -- 4262811a Switch Sign
46477: ---------------------------------------------------------------------------------------------------
46478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46475: ---------------------------------------------------------------------------------------------------
46476: -- 4262811a Switch Sign
46477: ---------------------------------------------------------------------------------------------------
46478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46483: -- 5132302
46476: -- 4262811a Switch Sign
46477: ---------------------------------------------------------------------------------------------------
46478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46483: -- 5132302
46484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46477: ---------------------------------------------------------------------------------------------------
46478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46483: -- 5132302
46484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46485: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46483: -- 5132302
46484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46485: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46486:
46480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46483: -- 5132302
46484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46485: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46486:
46487: END IF;
46488:
46481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46483: -- 5132302
46484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46485: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46486:
46487: END IF;
46488:
46489: -- 4955764
46486:
46487: END IF;
46488:
46489: -- 4955764
46490: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46491: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46492:
46493:
46494: XLA_AE_LINES_PKG.ValidateCurrentLine;
46490: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46491: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46492:
46493:
46494: XLA_AE_LINES_PKG.ValidateCurrentLine;
46495: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46496:
46497: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46498: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46491: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46492:
46493:
46494: XLA_AE_LINES_PKG.ValidateCurrentLine;
46495: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46496:
46497: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46498: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46499: ,p_balance_type_code => l_balance_type_code);
46644: --
46645: -- bulk performance
46646: --
46647: l_balance_type_code VARCHAR2(1);
46648: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
46649: l_log_module VARCHAR2(240);
46650:
46651: --
46652: -- Upgrade strategy
46716: ') = 'N'
46717: THEN
46718:
46719: --
46720: XLA_AE_LINES_PKG.SetNewLine;
46721:
46722: p_balance_type_code := l_balance_type_code;
46723: -- set the flag so later we will know whether the gain loss line needs to be created
46724:
46728:
46729: --
46730: -- bulk performance
46731: --
46732: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
46733: p_header_num => 0); -- 4262811
46734: --
46735: -- set accounting line options
46736: --
46733: p_header_num => 0); -- 4262811
46734: --
46735: -- set accounting line options
46736: --
46737: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
46738: p_natural_side_code => 'C'
46739: , p_gain_or_loss_flag => 'N'
46740: , p_gl_transfer_mode_code => 'S'
46741: , p_acct_entry_type_code => 'A'
46747: --
46748: --
46749: -- set accounting line type info
46750: --
46751: xla_ae_lines_pkg.SetAcctLineType
46752: (p_component_type => l_component_type
46753: ,p_event_type_code => l_event_type_code
46754: ,p_line_definition_owner_code => l_line_definition_owner_code
46755: ,p_line_definition_code => l_line_definition_code
46761: ,p_event_class_code => l_event_class_code);
46762: --
46763: -- set accounting class
46764: --
46765: xla_ae_lines_pkg.SetAcctClass(
46766: p_accounting_class_code => 'PREPAY'
46767: , p_ae_header_id => l_ae_header_id
46768: );
46769:
46769:
46770: --
46771: -- set rounding class
46772: --
46773: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46774: 'RECEIVABLE';
46775:
46776: --
46777: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46773: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46774: 'RECEIVABLE';
46775:
46776: --
46777: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46778: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46779: --
46780: -- bulk performance
46781: --
46774: 'RECEIVABLE';
46775:
46776: --
46777: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46778: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46779: --
46780: -- bulk performance
46781: --
46782: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46778: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46779: --
46780: -- bulk performance
46781: --
46782: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46783:
46784: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46785: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46786:
46780: -- bulk performance
46781: --
46782: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46783:
46784: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46785: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46786:
46787: -- 4955764
46788: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46784: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46785: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46786:
46787: -- 4955764
46788: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46789: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
46790:
46791: -- 4458381 Public Sector Enh
46792:
46828: l_rec_acct_attrs.array_num_value(15) := p_source_63;
46829: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
46830: l_rec_acct_attrs.array_char_value(16) := p_source_64;
46831:
46832: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46833: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46834:
46835: ---------------------------------------------------------------------------------------------------------------
46836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46829: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
46830: l_rec_acct_attrs.array_char_value(16) := p_source_64;
46831:
46832: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46833: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46834:
46835: ---------------------------------------------------------------------------------------------------------------
46836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46837: ---------------------------------------------------------------------------------------------------------------
46832: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46833: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46834:
46835: ---------------------------------------------------------------------------------------------------------------
46836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46837: ---------------------------------------------------------------------------------------------------------------
46838: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46839:
46840: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46834:
46835: ---------------------------------------------------------------------------------------------------------------
46836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46837: ---------------------------------------------------------------------------------------------------------------
46838: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46839:
46840: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46841: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46842:
46836: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46837: ---------------------------------------------------------------------------------------------------------------
46838: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46839:
46840: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46841: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46842:
46843: IF xla_accounting_cache_pkg.GetValueChar
46844: (p_source_code => 'LEDGER_CATEGORY_CODE'
46837: ---------------------------------------------------------------------------------------------------------------
46838: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46839:
46840: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46841: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46842:
46843: IF xla_accounting_cache_pkg.GetValueChar
46844: (p_source_code => 'LEDGER_CATEGORY_CODE'
46845: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
46848: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
46849: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
46850: )
46851: THEN
46852: xla_ae_lines_pkg.BflowUpgEntry
46853: (p_business_method_code => l_bflow_method_code
46854: ,p_business_class_code => l_bflow_class_code
46855: ,p_balance_type => l_balance_type_code);
46856: ELSE
46888: , x_value_type_code => l_adr_value_type_code
46889: , p_side => 'NA'
46890: );
46891:
46892: xla_ae_lines_pkg.set_ccid(
46893: p_code_combination_id => l_ccid
46894: , p_value_type_code => l_adr_value_type_code
46895: , p_transaction_coa_id => l_adr_transaction_coa_id
46896: , p_accounting_coa_id => l_adr_accounting_coa_id
46924: xla_accounting_err_pkg.build_message
46925: (p_appli_s_name => 'XLA'
46926: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
46927: ,p_token_1 => 'LINE_NUMBER'
46928: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
46929: ,p_token_2 => 'LINE_TYPE_NAME'
46930: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
46931: l_component_type
46932: ,l_component_code
46960: --
46961: --
46962: ------------------------------------------------------------------------------------------------
46963: -- 4219869 Business Flow
46964: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46965: -- Prior Entry. Currently, the following code is always generated.
46966: ------------------------------------------------------------------------------------------------
46967: XLA_AE_LINES_PKG.ValidateCurrentLine;
46968:
46963: -- 4219869 Business Flow
46964: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46965: -- Prior Entry. Currently, the following code is always generated.
46966: ------------------------------------------------------------------------------------------------
46967: XLA_AE_LINES_PKG.ValidateCurrentLine;
46968:
46969: ------------------------------------------------------------------------------------
46970: -- 4219869 Business Flow
46971: -- Populated credit and debit amounts -- Need to generate this within IF
46969: ------------------------------------------------------------------------------------
46970: -- 4219869 Business Flow
46971: -- Populated credit and debit amounts -- Need to generate this within IF
46972: ------------------------------------------------------------------------------------
46973: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46974:
46975: ----------------------------------------------------------------------------------
46976: -- 4219869 Business Flow
46977: -- Update journal entry status -- Need to generate this within IF
47001: -- To allow MPA report to determine if it should generate report process
47002: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47003: ------------------------------------------------------------------------------------------
47004:
47005: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47006: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47007: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47008: -- call ADRs
47009: -- Bug 4922099
47002: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47003: ------------------------------------------------------------------------------------------
47004:
47005: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47006: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47007: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47008: -- call ADRs
47009: -- Bug 4922099
47010: --
47026: , x_value_type_code => l_adr_value_type_code
47027: , p_side => 'NA'
47028: );
47029:
47030: xla_ae_lines_pkg.set_ccid(
47031: p_code_combination_id => l_ccid
47032: , p_value_type_code => l_adr_value_type_code
47033: , p_transaction_coa_id => l_adr_transaction_coa_id
47034: , p_accounting_coa_id => l_adr_accounting_coa_id
47049:
47050: --
47051: -- Update the line information that should be overwritten
47052: --
47053: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47054: p_header_num => 1);
47055: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47056:
47057: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47051: -- Update the line information that should be overwritten
47052: --
47053: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47054: p_header_num => 1);
47055: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47056:
47057: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47058:
47059: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47053: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47054: p_header_num => 1);
47055: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47056:
47057: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47058:
47059: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47060: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47061: END IF;
47056:
47057: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47058:
47059: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47060: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47061: END IF;
47062:
47063: --
47064: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47063: --
47064: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47065: --
47066: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
47067: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
47068: ELSE
47069: ---------------------------------------------------------------------------------------------------
47070: -- 4262811a Switch Sign
47071: ---------------------------------------------------------------------------------------------------
47068: ELSE
47069: ---------------------------------------------------------------------------------------------------
47070: -- 4262811a Switch Sign
47071: ---------------------------------------------------------------------------------------------------
47072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47069: ---------------------------------------------------------------------------------------------------
47070: -- 4262811a Switch Sign
47071: ---------------------------------------------------------------------------------------------------
47072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47077: -- 5132302
47070: -- 4262811a Switch Sign
47071: ---------------------------------------------------------------------------------------------------
47072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47077: -- 5132302
47078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47071: ---------------------------------------------------------------------------------------------------
47072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47077: -- 5132302
47078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47079: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47072: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47073: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47077: -- 5132302
47078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47079: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47080:
47074: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47077: -- 5132302
47078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47079: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47080:
47081: END IF;
47082:
47075: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47076: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47077: -- 5132302
47078: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47079: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47080:
47081: END IF;
47082:
47083: -- 4955764
47080:
47081: END IF;
47082:
47083: -- 4955764
47084: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47085: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47086:
47087:
47088: XLA_AE_LINES_PKG.ValidateCurrentLine;
47084: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47085: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47086:
47087:
47088: XLA_AE_LINES_PKG.ValidateCurrentLine;
47089: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47090:
47091: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47092: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47085: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47086:
47087:
47088: XLA_AE_LINES_PKG.ValidateCurrentLine;
47089: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47090:
47091: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47092: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47093: ,p_balance_type_code => l_balance_type_code);
47238: --
47239: -- bulk performance
47240: --
47241: l_balance_type_code VARCHAR2(1);
47242: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
47243: l_log_module VARCHAR2(240);
47244:
47245: --
47246: -- Upgrade strategy
47316: ') = 'N')
47317: THEN
47318:
47319: --
47320: XLA_AE_LINES_PKG.SetNewLine;
47321:
47322: p_balance_type_code := l_balance_type_code;
47323: -- set the flag so later we will know whether the gain loss line needs to be created
47324:
47328:
47329: --
47330: -- bulk performance
47331: --
47332: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
47333: p_header_num => 0); -- 4262811
47334: --
47335: -- set accounting line options
47336: --
47333: p_header_num => 0); -- 4262811
47334: --
47335: -- set accounting line options
47336: --
47337: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
47338: p_natural_side_code => 'C'
47339: , p_gain_or_loss_flag => 'N'
47340: , p_gl_transfer_mode_code => 'S'
47341: , p_acct_entry_type_code => 'A'
47347: --
47348: --
47349: -- set accounting line type info
47350: --
47351: xla_ae_lines_pkg.SetAcctLineType
47352: (p_component_type => l_component_type
47353: ,p_event_type_code => l_event_type_code
47354: ,p_line_definition_owner_code => l_line_definition_owner_code
47355: ,p_line_definition_code => l_line_definition_code
47361: ,p_event_class_code => l_event_class_code);
47362: --
47363: -- set accounting class
47364: --
47365: xla_ae_lines_pkg.SetAcctClass(
47366: p_accounting_class_code => 'REFUND'
47367: , p_ae_header_id => l_ae_header_id
47368: );
47369:
47369:
47370: --
47371: -- set rounding class
47372: --
47373: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47374: 'RECEIVABLE';
47375:
47376: --
47377: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47373: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47374: 'RECEIVABLE';
47375:
47376: --
47377: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47378: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47379: --
47380: -- bulk performance
47381: --
47374: 'RECEIVABLE';
47375:
47376: --
47377: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47378: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47379: --
47380: -- bulk performance
47381: --
47382: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47378: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47379: --
47380: -- bulk performance
47381: --
47382: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47383:
47384: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47385: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47386:
47380: -- bulk performance
47381: --
47382: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47383:
47384: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47385: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47386:
47387: -- 4955764
47388: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47384: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47385: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47386:
47387: -- 4955764
47388: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47389: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
47390:
47391: -- 4458381 Public Sector Enh
47392:
47428: l_rec_acct_attrs.array_num_value(15) := p_source_63;
47429: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47430: l_rec_acct_attrs.array_char_value(16) := p_source_64;
47431:
47432: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47433: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47434:
47435: ---------------------------------------------------------------------------------------------------------------
47436: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47429: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47430: l_rec_acct_attrs.array_char_value(16) := p_source_64;
47431:
47432: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47433: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47434:
47435: ---------------------------------------------------------------------------------------------------------------
47436: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47437: ---------------------------------------------------------------------------------------------------------------
47432: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47433: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47434:
47435: ---------------------------------------------------------------------------------------------------------------
47436: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47437: ---------------------------------------------------------------------------------------------------------------
47438: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47439:
47440: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47434:
47435: ---------------------------------------------------------------------------------------------------------------
47436: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47437: ---------------------------------------------------------------------------------------------------------------
47438: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47439:
47440: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47441: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47442:
47436: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47437: ---------------------------------------------------------------------------------------------------------------
47438: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47439:
47440: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47441: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47442:
47443: IF xla_accounting_cache_pkg.GetValueChar
47444: (p_source_code => 'LEDGER_CATEGORY_CODE'
47437: ---------------------------------------------------------------------------------------------------------------
47438: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47439:
47440: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47441: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47442:
47443: IF xla_accounting_cache_pkg.GetValueChar
47444: (p_source_code => 'LEDGER_CATEGORY_CODE'
47445: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
47448: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
47449: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
47450: )
47451: THEN
47452: xla_ae_lines_pkg.BflowUpgEntry
47453: (p_business_method_code => l_bflow_method_code
47454: ,p_business_class_code => l_bflow_class_code
47455: ,p_balance_type => l_balance_type_code);
47456: ELSE
47488: , x_value_type_code => l_adr_value_type_code
47489: , p_side => 'NA'
47490: );
47491:
47492: xla_ae_lines_pkg.set_ccid(
47493: p_code_combination_id => l_ccid
47494: , p_value_type_code => l_adr_value_type_code
47495: , p_transaction_coa_id => l_adr_transaction_coa_id
47496: , p_accounting_coa_id => l_adr_accounting_coa_id
47524: xla_accounting_err_pkg.build_message
47525: (p_appli_s_name => 'XLA'
47526: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
47527: ,p_token_1 => 'LINE_NUMBER'
47528: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
47529: ,p_token_2 => 'LINE_TYPE_NAME'
47530: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
47531: l_component_type
47532: ,l_component_code
47560: --
47561: --
47562: ------------------------------------------------------------------------------------------------
47563: -- 4219869 Business Flow
47564: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47565: -- Prior Entry. Currently, the following code is always generated.
47566: ------------------------------------------------------------------------------------------------
47567: XLA_AE_LINES_PKG.ValidateCurrentLine;
47568:
47563: -- 4219869 Business Flow
47564: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47565: -- Prior Entry. Currently, the following code is always generated.
47566: ------------------------------------------------------------------------------------------------
47567: XLA_AE_LINES_PKG.ValidateCurrentLine;
47568:
47569: ------------------------------------------------------------------------------------
47570: -- 4219869 Business Flow
47571: -- Populated credit and debit amounts -- Need to generate this within IF
47569: ------------------------------------------------------------------------------------
47570: -- 4219869 Business Flow
47571: -- Populated credit and debit amounts -- Need to generate this within IF
47572: ------------------------------------------------------------------------------------
47573: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47574:
47575: ----------------------------------------------------------------------------------
47576: -- 4219869 Business Flow
47577: -- Update journal entry status -- Need to generate this within IF
47601: -- To allow MPA report to determine if it should generate report process
47602: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47603: ------------------------------------------------------------------------------------------
47604:
47605: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47606: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47607: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47608: -- call ADRs
47609: -- Bug 4922099
47602: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47603: ------------------------------------------------------------------------------------------
47604:
47605: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47606: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47607: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47608: -- call ADRs
47609: -- Bug 4922099
47610: --
47626: , x_value_type_code => l_adr_value_type_code
47627: , p_side => 'NA'
47628: );
47629:
47630: xla_ae_lines_pkg.set_ccid(
47631: p_code_combination_id => l_ccid
47632: , p_value_type_code => l_adr_value_type_code
47633: , p_transaction_coa_id => l_adr_transaction_coa_id
47634: , p_accounting_coa_id => l_adr_accounting_coa_id
47649:
47650: --
47651: -- Update the line information that should be overwritten
47652: --
47653: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47654: p_header_num => 1);
47655: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47656:
47657: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47651: -- Update the line information that should be overwritten
47652: --
47653: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47654: p_header_num => 1);
47655: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47656:
47657: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47658:
47659: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47653: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47654: p_header_num => 1);
47655: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47656:
47657: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47658:
47659: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47660: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47661: END IF;
47656:
47657: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47658:
47659: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47660: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47661: END IF;
47662:
47663: --
47664: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47663: --
47664: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47665: --
47666: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
47667: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
47668: ELSE
47669: ---------------------------------------------------------------------------------------------------
47670: -- 4262811a Switch Sign
47671: ---------------------------------------------------------------------------------------------------
47668: ELSE
47669: ---------------------------------------------------------------------------------------------------
47670: -- 4262811a Switch Sign
47671: ---------------------------------------------------------------------------------------------------
47672: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47673: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47674: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47675: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47676: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47669: ---------------------------------------------------------------------------------------------------
47670: -- 4262811a Switch Sign
47671: ---------------------------------------------------------------------------------------------------
47672: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47673: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47674: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47675: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47676: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47677: -- 5132302
47670: -- 4262811a Switch Sign
47671: ---------------------------------------------------------------------------------------------------
47672: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47673: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47674: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47675: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47676: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47677: -- 5132302
47678: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47671: ---------------------------------------------------------------------------------------------------
47672: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47673: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47674: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47675: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47676: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47677: -- 5132302
47678: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47679: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47672: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47673: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47674: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47675: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47676: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47677: -- 5132302
47678: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47679: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47680:
47674: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47675: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47676: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47677: -- 5132302
47678: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47679: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47680:
47681: END IF;
47682:
47675: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47676: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47677: -- 5132302
47678: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47679: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47680:
47681: END IF;
47682:
47683: -- 4955764
47680:
47681: END IF;
47682:
47683: -- 4955764
47684: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47685: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47686:
47687:
47688: XLA_AE_LINES_PKG.ValidateCurrentLine;
47684: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47685: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47686:
47687:
47688: XLA_AE_LINES_PKG.ValidateCurrentLine;
47689: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47690:
47691: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47692: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47685: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47686:
47687:
47688: XLA_AE_LINES_PKG.ValidateCurrentLine;
47689: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47690:
47691: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47692: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47693: ,p_balance_type_code => l_balance_type_code);
47838: --
47839: -- bulk performance
47840: --
47841: l_balance_type_code VARCHAR2(1);
47842: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
47843: l_log_module VARCHAR2(240);
47844:
47845: --
47846: -- Upgrade strategy
47910: ') = 'N'
47911: THEN
47912:
47913: --
47914: XLA_AE_LINES_PKG.SetNewLine;
47915:
47916: p_balance_type_code := l_balance_type_code;
47917: -- set the flag so later we will know whether the gain loss line needs to be created
47918:
47922:
47923: --
47924: -- bulk performance
47925: --
47926: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
47927: p_header_num => 0); -- 4262811
47928: --
47929: -- set accounting line options
47930: --
47927: p_header_num => 0); -- 4262811
47928: --
47929: -- set accounting line options
47930: --
47931: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
47932: p_natural_side_code => 'C'
47933: , p_gain_or_loss_flag => 'N'
47934: , p_gl_transfer_mode_code => 'S'
47935: , p_acct_entry_type_code => 'A'
47941: --
47942: --
47943: -- set accounting line type info
47944: --
47945: xla_ae_lines_pkg.SetAcctLineType
47946: (p_component_type => l_component_type
47947: ,p_event_type_code => l_event_type_code
47948: ,p_line_definition_owner_code => l_line_definition_owner_code
47949: ,p_line_definition_code => l_line_definition_code
47955: ,p_event_class_code => l_event_class_code);
47956: --
47957: -- set accounting class
47958: --
47959: xla_ae_lines_pkg.SetAcctClass(
47960: p_accounting_class_code => 'REMITTANCE'
47961: , p_ae_header_id => l_ae_header_id
47962: );
47963:
47963:
47964: --
47965: -- set rounding class
47966: --
47967: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47968: 'RECEIVABLE';
47969:
47970: --
47971: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47967: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47968: 'RECEIVABLE';
47969:
47970: --
47971: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47972: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47973: --
47974: -- bulk performance
47975: --
47968: 'RECEIVABLE';
47969:
47970: --
47971: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47972: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47973: --
47974: -- bulk performance
47975: --
47976: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47972: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47973: --
47974: -- bulk performance
47975: --
47976: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47977:
47978: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47979: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47980:
47974: -- bulk performance
47975: --
47976: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47977:
47978: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47979: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47980:
47981: -- 4955764
47982: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47978: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47979: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47980:
47981: -- 4955764
47982: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47983: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
47984:
47985: -- 4458381 Public Sector Enh
47986:
48022: l_rec_acct_attrs.array_num_value(15) := p_source_63;
48023: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48024: l_rec_acct_attrs.array_char_value(16) := p_source_64;
48025:
48026: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48027: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48028:
48029: ---------------------------------------------------------------------------------------------------------------
48030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48023: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48024: l_rec_acct_attrs.array_char_value(16) := p_source_64;
48025:
48026: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48027: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48028:
48029: ---------------------------------------------------------------------------------------------------------------
48030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48031: ---------------------------------------------------------------------------------------------------------------
48026: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48027: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48028:
48029: ---------------------------------------------------------------------------------------------------------------
48030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48031: ---------------------------------------------------------------------------------------------------------------
48032: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48033:
48034: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48028:
48029: ---------------------------------------------------------------------------------------------------------------
48030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48031: ---------------------------------------------------------------------------------------------------------------
48032: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48033:
48034: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48035: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48036:
48030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48031: ---------------------------------------------------------------------------------------------------------------
48032: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48033:
48034: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48035: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48036:
48037: IF xla_accounting_cache_pkg.GetValueChar
48038: (p_source_code => 'LEDGER_CATEGORY_CODE'
48031: ---------------------------------------------------------------------------------------------------------------
48032: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48033:
48034: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48035: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48036:
48037: IF xla_accounting_cache_pkg.GetValueChar
48038: (p_source_code => 'LEDGER_CATEGORY_CODE'
48039: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
48042: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
48043: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
48044: )
48045: THEN
48046: xla_ae_lines_pkg.BflowUpgEntry
48047: (p_business_method_code => l_bflow_method_code
48048: ,p_business_class_code => l_bflow_class_code
48049: ,p_balance_type => l_balance_type_code);
48050: ELSE
48082: , x_value_type_code => l_adr_value_type_code
48083: , p_side => 'NA'
48084: );
48085:
48086: xla_ae_lines_pkg.set_ccid(
48087: p_code_combination_id => l_ccid
48088: , p_value_type_code => l_adr_value_type_code
48089: , p_transaction_coa_id => l_adr_transaction_coa_id
48090: , p_accounting_coa_id => l_adr_accounting_coa_id
48118: xla_accounting_err_pkg.build_message
48119: (p_appli_s_name => 'XLA'
48120: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
48121: ,p_token_1 => 'LINE_NUMBER'
48122: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
48123: ,p_token_2 => 'LINE_TYPE_NAME'
48124: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
48125: l_component_type
48126: ,l_component_code
48154: --
48155: --
48156: ------------------------------------------------------------------------------------------------
48157: -- 4219869 Business Flow
48158: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48159: -- Prior Entry. Currently, the following code is always generated.
48160: ------------------------------------------------------------------------------------------------
48161: XLA_AE_LINES_PKG.ValidateCurrentLine;
48162:
48157: -- 4219869 Business Flow
48158: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48159: -- Prior Entry. Currently, the following code is always generated.
48160: ------------------------------------------------------------------------------------------------
48161: XLA_AE_LINES_PKG.ValidateCurrentLine;
48162:
48163: ------------------------------------------------------------------------------------
48164: -- 4219869 Business Flow
48165: -- Populated credit and debit amounts -- Need to generate this within IF
48163: ------------------------------------------------------------------------------------
48164: -- 4219869 Business Flow
48165: -- Populated credit and debit amounts -- Need to generate this within IF
48166: ------------------------------------------------------------------------------------
48167: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48168:
48169: ----------------------------------------------------------------------------------
48170: -- 4219869 Business Flow
48171: -- Update journal entry status -- Need to generate this within IF
48195: -- To allow MPA report to determine if it should generate report process
48196: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48197: ------------------------------------------------------------------------------------------
48198:
48199: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48200: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48201: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48202: -- call ADRs
48203: -- Bug 4922099
48196: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48197: ------------------------------------------------------------------------------------------
48198:
48199: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48200: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48201: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48202: -- call ADRs
48203: -- Bug 4922099
48204: --
48220: , x_value_type_code => l_adr_value_type_code
48221: , p_side => 'NA'
48222: );
48223:
48224: xla_ae_lines_pkg.set_ccid(
48225: p_code_combination_id => l_ccid
48226: , p_value_type_code => l_adr_value_type_code
48227: , p_transaction_coa_id => l_adr_transaction_coa_id
48228: , p_accounting_coa_id => l_adr_accounting_coa_id
48243:
48244: --
48245: -- Update the line information that should be overwritten
48246: --
48247: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48248: p_header_num => 1);
48249: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48250:
48251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48245: -- Update the line information that should be overwritten
48246: --
48247: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48248: p_header_num => 1);
48249: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48250:
48251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48252:
48253: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48247: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48248: p_header_num => 1);
48249: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48250:
48251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48252:
48253: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48254: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48255: END IF;
48250:
48251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48252:
48253: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48254: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48255: END IF;
48256:
48257: --
48258: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48257: --
48258: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48259: --
48260: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
48261: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
48262: ELSE
48263: ---------------------------------------------------------------------------------------------------
48264: -- 4262811a Switch Sign
48265: ---------------------------------------------------------------------------------------------------
48262: ELSE
48263: ---------------------------------------------------------------------------------------------------
48264: -- 4262811a Switch Sign
48265: ---------------------------------------------------------------------------------------------------
48266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48263: ---------------------------------------------------------------------------------------------------
48264: -- 4262811a Switch Sign
48265: ---------------------------------------------------------------------------------------------------
48266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48271: -- 5132302
48264: -- 4262811a Switch Sign
48265: ---------------------------------------------------------------------------------------------------
48266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48271: -- 5132302
48272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48265: ---------------------------------------------------------------------------------------------------
48266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48271: -- 5132302
48272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48273: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48271: -- 5132302
48272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48273: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48274:
48268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48271: -- 5132302
48272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48273: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48274:
48275: END IF;
48276:
48269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48271: -- 5132302
48272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48273: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48274:
48275: END IF;
48276:
48277: -- 4955764
48274:
48275: END IF;
48276:
48277: -- 4955764
48278: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48279: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48280:
48281:
48282: XLA_AE_LINES_PKG.ValidateCurrentLine;
48278: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48279: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48280:
48281:
48282: XLA_AE_LINES_PKG.ValidateCurrentLine;
48283: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48284:
48285: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48286: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48279: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48280:
48281:
48282: XLA_AE_LINES_PKG.ValidateCurrentLine;
48283: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48284:
48285: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48286: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48287: ,p_balance_type_code => l_balance_type_code);
48432: --
48433: -- bulk performance
48434: --
48435: l_balance_type_code VARCHAR2(1);
48436: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
48437: l_log_module VARCHAR2(240);
48438:
48439: --
48440: -- Upgrade strategy
48504: ') = 'N'
48505: THEN
48506:
48507: --
48508: XLA_AE_LINES_PKG.SetNewLine;
48509:
48510: p_balance_type_code := l_balance_type_code;
48511: -- set the flag so later we will know whether the gain loss line needs to be created
48512:
48516:
48517: --
48518: -- bulk performance
48519: --
48520: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
48521: p_header_num => 0); -- 4262811
48522: --
48523: -- set accounting line options
48524: --
48521: p_header_num => 0); -- 4262811
48522: --
48523: -- set accounting line options
48524: --
48525: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
48526: p_natural_side_code => 'C'
48527: , p_gain_or_loss_flag => 'N'
48528: , p_gl_transfer_mode_code => 'S'
48529: , p_acct_entry_type_code => 'A'
48535: --
48536: --
48537: -- set accounting line type info
48538: --
48539: xla_ae_lines_pkg.SetAcctLineType
48540: (p_component_type => l_component_type
48541: ,p_event_type_code => l_event_type_code
48542: ,p_line_definition_owner_code => l_line_definition_owner_code
48543: ,p_line_definition_code => l_line_definition_code
48549: ,p_event_class_code => l_event_class_code);
48550: --
48551: -- set accounting class
48552: --
48553: xla_ae_lines_pkg.SetAcctClass(
48554: p_accounting_class_code => 'REM_BR'
48555: , p_ae_header_id => l_ae_header_id
48556: );
48557:
48557:
48558: --
48559: -- set rounding class
48560: --
48561: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48562: 'RECEIVABLE';
48563:
48564: --
48565: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48561: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48562: 'RECEIVABLE';
48563:
48564: --
48565: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48566: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48567: --
48568: -- bulk performance
48569: --
48562: 'RECEIVABLE';
48563:
48564: --
48565: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48566: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48567: --
48568: -- bulk performance
48569: --
48570: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48566: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48567: --
48568: -- bulk performance
48569: --
48570: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48571:
48572: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48573: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48574:
48568: -- bulk performance
48569: --
48570: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48571:
48572: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48573: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48574:
48575: -- 4955764
48576: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48572: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48573: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48574:
48575: -- 4955764
48576: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48577: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
48578:
48579: -- 4458381 Public Sector Enh
48580:
48616: l_rec_acct_attrs.array_num_value(15) := p_source_63;
48617: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48618: l_rec_acct_attrs.array_char_value(16) := p_source_64;
48619:
48620: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48621: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48622:
48623: ---------------------------------------------------------------------------------------------------------------
48624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48617: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48618: l_rec_acct_attrs.array_char_value(16) := p_source_64;
48619:
48620: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48621: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48622:
48623: ---------------------------------------------------------------------------------------------------------------
48624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48625: ---------------------------------------------------------------------------------------------------------------
48620: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48621: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48622:
48623: ---------------------------------------------------------------------------------------------------------------
48624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48625: ---------------------------------------------------------------------------------------------------------------
48626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48627:
48628: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48622:
48623: ---------------------------------------------------------------------------------------------------------------
48624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48625: ---------------------------------------------------------------------------------------------------------------
48626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48627:
48628: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48629: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48630:
48624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48625: ---------------------------------------------------------------------------------------------------------------
48626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48627:
48628: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48629: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48630:
48631: IF xla_accounting_cache_pkg.GetValueChar
48632: (p_source_code => 'LEDGER_CATEGORY_CODE'
48625: ---------------------------------------------------------------------------------------------------------------
48626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48627:
48628: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48629: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48630:
48631: IF xla_accounting_cache_pkg.GetValueChar
48632: (p_source_code => 'LEDGER_CATEGORY_CODE'
48633: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
48636: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
48637: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
48638: )
48639: THEN
48640: xla_ae_lines_pkg.BflowUpgEntry
48641: (p_business_method_code => l_bflow_method_code
48642: ,p_business_class_code => l_bflow_class_code
48643: ,p_balance_type => l_balance_type_code);
48644: ELSE
48676: , x_value_type_code => l_adr_value_type_code
48677: , p_side => 'NA'
48678: );
48679:
48680: xla_ae_lines_pkg.set_ccid(
48681: p_code_combination_id => l_ccid
48682: , p_value_type_code => l_adr_value_type_code
48683: , p_transaction_coa_id => l_adr_transaction_coa_id
48684: , p_accounting_coa_id => l_adr_accounting_coa_id
48712: xla_accounting_err_pkg.build_message
48713: (p_appli_s_name => 'XLA'
48714: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
48715: ,p_token_1 => 'LINE_NUMBER'
48716: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
48717: ,p_token_2 => 'LINE_TYPE_NAME'
48718: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
48719: l_component_type
48720: ,l_component_code
48748: --
48749: --
48750: ------------------------------------------------------------------------------------------------
48751: -- 4219869 Business Flow
48752: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48753: -- Prior Entry. Currently, the following code is always generated.
48754: ------------------------------------------------------------------------------------------------
48755: XLA_AE_LINES_PKG.ValidateCurrentLine;
48756:
48751: -- 4219869 Business Flow
48752: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48753: -- Prior Entry. Currently, the following code is always generated.
48754: ------------------------------------------------------------------------------------------------
48755: XLA_AE_LINES_PKG.ValidateCurrentLine;
48756:
48757: ------------------------------------------------------------------------------------
48758: -- 4219869 Business Flow
48759: -- Populated credit and debit amounts -- Need to generate this within IF
48757: ------------------------------------------------------------------------------------
48758: -- 4219869 Business Flow
48759: -- Populated credit and debit amounts -- Need to generate this within IF
48760: ------------------------------------------------------------------------------------
48761: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48762:
48763: ----------------------------------------------------------------------------------
48764: -- 4219869 Business Flow
48765: -- Update journal entry status -- Need to generate this within IF
48789: -- To allow MPA report to determine if it should generate report process
48790: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48791: ------------------------------------------------------------------------------------------
48792:
48793: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48794: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48795: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48796: -- call ADRs
48797: -- Bug 4922099
48790: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48791: ------------------------------------------------------------------------------------------
48792:
48793: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48794: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48795: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48796: -- call ADRs
48797: -- Bug 4922099
48798: --
48814: , x_value_type_code => l_adr_value_type_code
48815: , p_side => 'NA'
48816: );
48817:
48818: xla_ae_lines_pkg.set_ccid(
48819: p_code_combination_id => l_ccid
48820: , p_value_type_code => l_adr_value_type_code
48821: , p_transaction_coa_id => l_adr_transaction_coa_id
48822: , p_accounting_coa_id => l_adr_accounting_coa_id
48837:
48838: --
48839: -- Update the line information that should be overwritten
48840: --
48841: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48842: p_header_num => 1);
48843: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48844:
48845: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48839: -- Update the line information that should be overwritten
48840: --
48841: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48842: p_header_num => 1);
48843: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48844:
48845: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48846:
48847: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48841: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48842: p_header_num => 1);
48843: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48844:
48845: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48846:
48847: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48848: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48849: END IF;
48844:
48845: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48846:
48847: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48848: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48849: END IF;
48850:
48851: --
48852: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48851: --
48852: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48853: --
48854: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
48855: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
48856: ELSE
48857: ---------------------------------------------------------------------------------------------------
48858: -- 4262811a Switch Sign
48859: ---------------------------------------------------------------------------------------------------
48856: ELSE
48857: ---------------------------------------------------------------------------------------------------
48858: -- 4262811a Switch Sign
48859: ---------------------------------------------------------------------------------------------------
48860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48857: ---------------------------------------------------------------------------------------------------
48858: -- 4262811a Switch Sign
48859: ---------------------------------------------------------------------------------------------------
48860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48865: -- 5132302
48858: -- 4262811a Switch Sign
48859: ---------------------------------------------------------------------------------------------------
48860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48865: -- 5132302
48866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48859: ---------------------------------------------------------------------------------------------------
48860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48865: -- 5132302
48866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48865: -- 5132302
48866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48868:
48862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48865: -- 5132302
48866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48868:
48869: END IF;
48870:
48863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48865: -- 5132302
48866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48868:
48869: END IF;
48870:
48871: -- 4955764
48868:
48869: END IF;
48870:
48871: -- 4955764
48872: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48873: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48874:
48875:
48876: XLA_AE_LINES_PKG.ValidateCurrentLine;
48872: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48873: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48874:
48875:
48876: XLA_AE_LINES_PKG.ValidateCurrentLine;
48877: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48878:
48879: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48880: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48873: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48874:
48875:
48876: XLA_AE_LINES_PKG.ValidateCurrentLine;
48877: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48878:
48879: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48880: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48881: ,p_balance_type_code => l_balance_type_code);
49024: --
49025: -- bulk performance
49026: --
49027: l_balance_type_code VARCHAR2(1);
49028: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
49029: l_log_module VARCHAR2(240);
49030:
49031: --
49032: -- Upgrade strategy
49094: ') = 'N'
49095: THEN
49096:
49097: --
49098: XLA_AE_LINES_PKG.SetNewLine;
49099:
49100: p_balance_type_code := l_balance_type_code;
49101: -- set the flag so later we will know whether the gain loss line needs to be created
49102:
49106:
49107: --
49108: -- bulk performance
49109: --
49110: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
49111: p_header_num => 0); -- 4262811
49112: --
49113: -- set accounting line options
49114: --
49111: p_header_num => 0); -- 4262811
49112: --
49113: -- set accounting line options
49114: --
49115: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
49116: p_natural_side_code => 'C'
49117: , p_gain_or_loss_flag => 'N'
49118: , p_gl_transfer_mode_code => 'S'
49119: , p_acct_entry_type_code => 'A'
49125: --
49126: --
49127: -- set accounting line type info
49128: --
49129: xla_ae_lines_pkg.SetAcctLineType
49130: (p_component_type => l_component_type
49131: ,p_event_type_code => l_event_type_code
49132: ,p_line_definition_owner_code => l_line_definition_owner_code
49133: ,p_line_definition_code => l_line_definition_code
49139: ,p_event_class_code => l_event_class_code);
49140: --
49141: -- set accounting class
49142: --
49143: xla_ae_lines_pkg.SetAcctClass(
49144: p_accounting_class_code => 'TAX'
49145: , p_ae_header_id => l_ae_header_id
49146: );
49147:
49147:
49148: --
49149: -- set rounding class
49150: --
49151: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49152: 'RECEIVABLE';
49153:
49154: --
49155: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49151: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49152: 'RECEIVABLE';
49153:
49154: --
49155: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49156: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49157: --
49158: -- bulk performance
49159: --
49152: 'RECEIVABLE';
49153:
49154: --
49155: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49156: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49157: --
49158: -- bulk performance
49159: --
49160: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49156: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49157: --
49158: -- bulk performance
49159: --
49160: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49161:
49162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49163: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49164:
49158: -- bulk performance
49159: --
49160: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49161:
49162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49163: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49164:
49165: -- 4955764
49166: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49163: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49164:
49165: -- 4955764
49166: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49167: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
49168:
49169: -- 4458381 Public Sector Enh
49170:
49206: l_rec_acct_attrs.array_num_value(15) := p_source_63;
49207: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49208: l_rec_acct_attrs.array_char_value(16) := p_source_64;
49209:
49210: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49211: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49212:
49213: ---------------------------------------------------------------------------------------------------------------
49214: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49207: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49208: l_rec_acct_attrs.array_char_value(16) := p_source_64;
49209:
49210: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49211: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49212:
49213: ---------------------------------------------------------------------------------------------------------------
49214: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49215: ---------------------------------------------------------------------------------------------------------------
49210: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49211: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49212:
49213: ---------------------------------------------------------------------------------------------------------------
49214: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49215: ---------------------------------------------------------------------------------------------------------------
49216: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49217:
49218: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49212:
49213: ---------------------------------------------------------------------------------------------------------------
49214: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49215: ---------------------------------------------------------------------------------------------------------------
49216: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49217:
49218: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49219: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49220:
49214: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49215: ---------------------------------------------------------------------------------------------------------------
49216: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49217:
49218: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49219: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49220:
49221: IF xla_accounting_cache_pkg.GetValueChar
49222: (p_source_code => 'LEDGER_CATEGORY_CODE'
49215: ---------------------------------------------------------------------------------------------------------------
49216: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49217:
49218: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49219: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49220:
49221: IF xla_accounting_cache_pkg.GetValueChar
49222: (p_source_code => 'LEDGER_CATEGORY_CODE'
49223: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
49226: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
49227: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
49228: )
49229: THEN
49230: xla_ae_lines_pkg.BflowUpgEntry
49231: (p_business_method_code => l_bflow_method_code
49232: ,p_business_class_code => l_bflow_class_code
49233: ,p_balance_type => l_balance_type_code);
49234: ELSE
49266: , x_value_type_code => l_adr_value_type_code
49267: , p_side => 'NA'
49268: );
49269:
49270: xla_ae_lines_pkg.set_ccid(
49271: p_code_combination_id => l_ccid
49272: , p_value_type_code => l_adr_value_type_code
49273: , p_transaction_coa_id => l_adr_transaction_coa_id
49274: , p_accounting_coa_id => l_adr_accounting_coa_id
49302: xla_accounting_err_pkg.build_message
49303: (p_appli_s_name => 'XLA'
49304: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
49305: ,p_token_1 => 'LINE_NUMBER'
49306: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
49307: ,p_token_2 => 'LINE_TYPE_NAME'
49308: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
49309: l_component_type
49310: ,l_component_code
49338: --
49339: --
49340: ------------------------------------------------------------------------------------------------
49341: -- 4219869 Business Flow
49342: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49343: -- Prior Entry. Currently, the following code is always generated.
49344: ------------------------------------------------------------------------------------------------
49345: XLA_AE_LINES_PKG.ValidateCurrentLine;
49346:
49341: -- 4219869 Business Flow
49342: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49343: -- Prior Entry. Currently, the following code is always generated.
49344: ------------------------------------------------------------------------------------------------
49345: XLA_AE_LINES_PKG.ValidateCurrentLine;
49346:
49347: ------------------------------------------------------------------------------------
49348: -- 4219869 Business Flow
49349: -- Populated credit and debit amounts -- Need to generate this within IF
49347: ------------------------------------------------------------------------------------
49348: -- 4219869 Business Flow
49349: -- Populated credit and debit amounts -- Need to generate this within IF
49350: ------------------------------------------------------------------------------------
49351: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49352:
49353: ----------------------------------------------------------------------------------
49354: -- 4219869 Business Flow
49355: -- Update journal entry status -- Need to generate this within IF
49379: -- To allow MPA report to determine if it should generate report process
49380: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49381: ------------------------------------------------------------------------------------------
49382:
49383: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49384: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49385: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49386: -- call ADRs
49387: -- Bug 4922099
49380: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49381: ------------------------------------------------------------------------------------------
49382:
49383: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49384: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49385: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49386: -- call ADRs
49387: -- Bug 4922099
49388: --
49404: , x_value_type_code => l_adr_value_type_code
49405: , p_side => 'NA'
49406: );
49407:
49408: xla_ae_lines_pkg.set_ccid(
49409: p_code_combination_id => l_ccid
49410: , p_value_type_code => l_adr_value_type_code
49411: , p_transaction_coa_id => l_adr_transaction_coa_id
49412: , p_accounting_coa_id => l_adr_accounting_coa_id
49427:
49428: --
49429: -- Update the line information that should be overwritten
49430: --
49431: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49432: p_header_num => 1);
49433: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49434:
49435: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49429: -- Update the line information that should be overwritten
49430: --
49431: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49432: p_header_num => 1);
49433: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49434:
49435: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49436:
49437: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49431: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49432: p_header_num => 1);
49433: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49434:
49435: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49436:
49437: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49438: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49439: END IF;
49434:
49435: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49436:
49437: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49438: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49439: END IF;
49440:
49441: --
49442: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49441: --
49442: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49443: --
49444: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
49445: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
49446: ELSE
49447: ---------------------------------------------------------------------------------------------------
49448: -- 4262811a Switch Sign
49449: ---------------------------------------------------------------------------------------------------
49446: ELSE
49447: ---------------------------------------------------------------------------------------------------
49448: -- 4262811a Switch Sign
49449: ---------------------------------------------------------------------------------------------------
49450: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49452: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49454: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49447: ---------------------------------------------------------------------------------------------------
49448: -- 4262811a Switch Sign
49449: ---------------------------------------------------------------------------------------------------
49450: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49452: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49454: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49455: -- 5132302
49448: -- 4262811a Switch Sign
49449: ---------------------------------------------------------------------------------------------------
49450: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49452: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49454: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49455: -- 5132302
49456: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49449: ---------------------------------------------------------------------------------------------------
49450: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49452: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49454: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49455: -- 5132302
49456: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49457: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49450: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49451: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49452: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49454: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49455: -- 5132302
49456: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49457: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49458:
49452: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49454: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49455: -- 5132302
49456: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49457: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49458:
49459: END IF;
49460:
49453: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49454: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49455: -- 5132302
49456: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49457: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49458:
49459: END IF;
49460:
49461: -- 4955764
49458:
49459: END IF;
49460:
49461: -- 4955764
49462: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49463: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49464:
49465:
49466: XLA_AE_LINES_PKG.ValidateCurrentLine;
49462: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49463: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49464:
49465:
49466: XLA_AE_LINES_PKG.ValidateCurrentLine;
49467: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49468:
49469: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49470: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49463: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49464:
49465:
49466: XLA_AE_LINES_PKG.ValidateCurrentLine;
49467: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49468:
49469: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49470: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49471: ,p_balance_type_code => l_balance_type_code);
49618: --
49619: -- bulk performance
49620: --
49621: l_balance_type_code VARCHAR2(1);
49622: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
49623: l_log_module VARCHAR2(240);
49624:
49625: --
49626: -- Upgrade strategy
49750: ') = 'NETTING')
49751: THEN
49752:
49753: --
49754: XLA_AE_LINES_PKG.SetNewLine;
49755:
49756: p_balance_type_code := l_balance_type_code;
49757: -- set the flag so later we will know whether the gain loss line needs to be created
49758:
49762:
49763: --
49764: -- bulk performance
49765: --
49766: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
49767: p_header_num => 0); -- 4262811
49768: --
49769: -- set accounting line options
49770: --
49767: p_header_num => 0); -- 4262811
49768: --
49769: -- set accounting line options
49770: --
49771: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
49772: p_natural_side_code => 'D'
49773: , p_gain_or_loss_flag => 'N'
49774: , p_gl_transfer_mode_code => 'S'
49775: , p_acct_entry_type_code => 'A'
49781: --
49782: --
49783: -- set accounting line type info
49784: --
49785: xla_ae_lines_pkg.SetAcctLineType
49786: (p_component_type => l_component_type
49787: ,p_event_type_code => l_event_type_code
49788: ,p_line_definition_owner_code => l_line_definition_owner_code
49789: ,p_line_definition_code => l_line_definition_code
49795: ,p_event_class_code => l_event_class_code);
49796: --
49797: -- set accounting class
49798: --
49799: xla_ae_lines_pkg.SetAcctClass(
49800: p_accounting_class_code => 'UNAPP'
49801: , p_ae_header_id => l_ae_header_id
49802: );
49803:
49803:
49804: --
49805: -- set rounding class
49806: --
49807: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49808: 'RECEIVABLE';
49809:
49810: --
49811: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49807: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49808: 'RECEIVABLE';
49809:
49810: --
49811: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49812: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49813: --
49814: -- bulk performance
49815: --
49808: 'RECEIVABLE';
49809:
49810: --
49811: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49812: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49813: --
49814: -- bulk performance
49815: --
49816: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49812: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49813: --
49814: -- bulk performance
49815: --
49816: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49817:
49818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49819: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49820:
49814: -- bulk performance
49815: --
49816: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49817:
49818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49819: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49820:
49821: -- 4955764
49822: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49819: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49820:
49821: -- 4955764
49822: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49823: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
49824:
49825: -- 4458381 Public Sector Enh
49826:
49862: l_rec_acct_attrs.array_num_value(15) := p_source_69;
49863: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49864: l_rec_acct_attrs.array_char_value(16) := p_source_64;
49865:
49866: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49867: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49868:
49869: ---------------------------------------------------------------------------------------------------------------
49870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49863: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49864: l_rec_acct_attrs.array_char_value(16) := p_source_64;
49865:
49866: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49867: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49868:
49869: ---------------------------------------------------------------------------------------------------------------
49870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49871: ---------------------------------------------------------------------------------------------------------------
49866: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49867: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49868:
49869: ---------------------------------------------------------------------------------------------------------------
49870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49871: ---------------------------------------------------------------------------------------------------------------
49872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49873:
49874: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49868:
49869: ---------------------------------------------------------------------------------------------------------------
49870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49871: ---------------------------------------------------------------------------------------------------------------
49872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49873:
49874: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49875: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49876:
49870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49871: ---------------------------------------------------------------------------------------------------------------
49872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49873:
49874: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49875: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49876:
49877: IF xla_accounting_cache_pkg.GetValueChar
49878: (p_source_code => 'LEDGER_CATEGORY_CODE'
49871: ---------------------------------------------------------------------------------------------------------------
49872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49873:
49874: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49875: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49876:
49877: IF xla_accounting_cache_pkg.GetValueChar
49878: (p_source_code => 'LEDGER_CATEGORY_CODE'
49879: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
49882: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
49883: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
49884: )
49885: THEN
49886: xla_ae_lines_pkg.BflowUpgEntry
49887: (p_business_method_code => l_bflow_method_code
49888: ,p_business_class_code => l_bflow_class_code
49889: ,p_balance_type => l_balance_type_code);
49890: ELSE
49922: , x_value_type_code => l_adr_value_type_code
49923: , p_side => 'NA'
49924: );
49925:
49926: xla_ae_lines_pkg.set_ccid(
49927: p_code_combination_id => l_ccid
49928: , p_value_type_code => l_adr_value_type_code
49929: , p_transaction_coa_id => l_adr_transaction_coa_id
49930: , p_accounting_coa_id => l_adr_accounting_coa_id
49958: xla_accounting_err_pkg.build_message
49959: (p_appli_s_name => 'XLA'
49960: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
49961: ,p_token_1 => 'LINE_NUMBER'
49962: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
49963: ,p_token_2 => 'LINE_TYPE_NAME'
49964: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
49965: l_component_type
49966: ,l_component_code
49994: --
49995: --
49996: ------------------------------------------------------------------------------------------------
49997: -- 4219869 Business Flow
49998: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49999: -- Prior Entry. Currently, the following code is always generated.
50000: ------------------------------------------------------------------------------------------------
50001: XLA_AE_LINES_PKG.ValidateCurrentLine;
50002:
49997: -- 4219869 Business Flow
49998: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49999: -- Prior Entry. Currently, the following code is always generated.
50000: ------------------------------------------------------------------------------------------------
50001: XLA_AE_LINES_PKG.ValidateCurrentLine;
50002:
50003: ------------------------------------------------------------------------------------
50004: -- 4219869 Business Flow
50005: -- Populated credit and debit amounts -- Need to generate this within IF
50003: ------------------------------------------------------------------------------------
50004: -- 4219869 Business Flow
50005: -- Populated credit and debit amounts -- Need to generate this within IF
50006: ------------------------------------------------------------------------------------
50007: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50008:
50009: ----------------------------------------------------------------------------------
50010: -- 4219869 Business Flow
50011: -- Update journal entry status -- Need to generate this within IF
50035: -- To allow MPA report to determine if it should generate report process
50036: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50037: ------------------------------------------------------------------------------------------
50038:
50039: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50040: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50041: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50042: -- call ADRs
50043: -- Bug 4922099
50036: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50037: ------------------------------------------------------------------------------------------
50038:
50039: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50040: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50041: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50042: -- call ADRs
50043: -- Bug 4922099
50044: --
50060: , x_value_type_code => l_adr_value_type_code
50061: , p_side => 'NA'
50062: );
50063:
50064: xla_ae_lines_pkg.set_ccid(
50065: p_code_combination_id => l_ccid
50066: , p_value_type_code => l_adr_value_type_code
50067: , p_transaction_coa_id => l_adr_transaction_coa_id
50068: , p_accounting_coa_id => l_adr_accounting_coa_id
50083:
50084: --
50085: -- Update the line information that should be overwritten
50086: --
50087: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50088: p_header_num => 1);
50089: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50090:
50091: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50085: -- Update the line information that should be overwritten
50086: --
50087: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50088: p_header_num => 1);
50089: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50090:
50091: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50092:
50093: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50087: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50088: p_header_num => 1);
50089: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50090:
50091: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50092:
50093: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50094: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50095: END IF;
50090:
50091: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50092:
50093: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50094: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50095: END IF;
50096:
50097: --
50098: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50097: --
50098: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50099: --
50100: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
50101: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
50102: ELSE
50103: ---------------------------------------------------------------------------------------------------
50104: -- 4262811a Switch Sign
50105: ---------------------------------------------------------------------------------------------------
50102: ELSE
50103: ---------------------------------------------------------------------------------------------------
50104: -- 4262811a Switch Sign
50105: ---------------------------------------------------------------------------------------------------
50106: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50107: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50109: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50103: ---------------------------------------------------------------------------------------------------
50104: -- 4262811a Switch Sign
50105: ---------------------------------------------------------------------------------------------------
50106: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50107: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50109: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50111: -- 5132302
50104: -- 4262811a Switch Sign
50105: ---------------------------------------------------------------------------------------------------
50106: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50107: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50109: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50111: -- 5132302
50112: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50105: ---------------------------------------------------------------------------------------------------
50106: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50107: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50109: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50111: -- 5132302
50112: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50113: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50106: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50107: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50109: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50111: -- 5132302
50112: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50113: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50114:
50108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50109: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50111: -- 5132302
50112: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50113: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50114:
50115: END IF;
50116:
50109: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50111: -- 5132302
50112: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50113: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50114:
50115: END IF;
50116:
50117: -- 4955764
50114:
50115: END IF;
50116:
50117: -- 4955764
50118: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50119: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50120:
50121:
50122: XLA_AE_LINES_PKG.ValidateCurrentLine;
50118: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50119: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50120:
50121:
50122: XLA_AE_LINES_PKG.ValidateCurrentLine;
50123: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50124:
50125: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50126: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50119: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50120:
50121:
50122: XLA_AE_LINES_PKG.ValidateCurrentLine;
50123: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50124:
50125: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50126: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50127: ,p_balance_type_code => l_balance_type_code);
50274: --
50275: -- bulk performance
50276: --
50277: l_balance_type_code VARCHAR2(1);
50278: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
50279: l_log_module VARCHAR2(240);
50280:
50281: --
50282: -- Upgrade strategy
50402: ') <> 'UNID'
50403: THEN
50404:
50405: --
50406: XLA_AE_LINES_PKG.SetNewLine;
50407:
50408: p_balance_type_code := l_balance_type_code;
50409: -- set the flag so later we will know whether the gain loss line needs to be created
50410:
50414:
50415: --
50416: -- bulk performance
50417: --
50418: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
50419: p_header_num => 0); -- 4262811
50420: --
50421: -- set accounting line options
50422: --
50419: p_header_num => 0); -- 4262811
50420: --
50421: -- set accounting line options
50422: --
50423: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
50424: p_natural_side_code => 'D'
50425: , p_gain_or_loss_flag => 'N'
50426: , p_gl_transfer_mode_code => 'S'
50427: , p_acct_entry_type_code => 'A'
50433: --
50434: --
50435: -- set accounting line type info
50436: --
50437: xla_ae_lines_pkg.SetAcctLineType
50438: (p_component_type => l_component_type
50439: ,p_event_type_code => l_event_type_code
50440: ,p_line_definition_owner_code => l_line_definition_owner_code
50441: ,p_line_definition_code => l_line_definition_code
50447: ,p_event_class_code => l_event_class_code);
50448: --
50449: -- set accounting class
50450: --
50451: xla_ae_lines_pkg.SetAcctClass(
50452: p_accounting_class_code => 'UNAPP'
50453: , p_ae_header_id => l_ae_header_id
50454: );
50455:
50455:
50456: --
50457: -- set rounding class
50458: --
50459: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50460: 'RECEIVABLE';
50461:
50462: --
50463: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50459: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50460: 'RECEIVABLE';
50461:
50462: --
50463: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50464: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50465: --
50466: -- bulk performance
50467: --
50460: 'RECEIVABLE';
50461:
50462: --
50463: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50464: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50465: --
50466: -- bulk performance
50467: --
50468: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50464: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50465: --
50466: -- bulk performance
50467: --
50468: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50469:
50470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50471: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50472:
50466: -- bulk performance
50467: --
50468: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50469:
50470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50471: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50472:
50473: -- 4955764
50474: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50471: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50472:
50473: -- 4955764
50474: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50475: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
50476:
50477: -- 4458381 Public Sector Enh
50478:
50514: l_rec_acct_attrs.array_num_value(15) := p_source_69;
50515: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50516: l_rec_acct_attrs.array_char_value(16) := p_source_64;
50517:
50518: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50519: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50520:
50521: ---------------------------------------------------------------------------------------------------------------
50522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50515: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50516: l_rec_acct_attrs.array_char_value(16) := p_source_64;
50517:
50518: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50519: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50520:
50521: ---------------------------------------------------------------------------------------------------------------
50522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50523: ---------------------------------------------------------------------------------------------------------------
50518: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50519: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50520:
50521: ---------------------------------------------------------------------------------------------------------------
50522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50523: ---------------------------------------------------------------------------------------------------------------
50524: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50525:
50526: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50520:
50521: ---------------------------------------------------------------------------------------------------------------
50522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50523: ---------------------------------------------------------------------------------------------------------------
50524: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50525:
50526: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50527: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50528:
50522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50523: ---------------------------------------------------------------------------------------------------------------
50524: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50525:
50526: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50527: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50528:
50529: IF xla_accounting_cache_pkg.GetValueChar
50530: (p_source_code => 'LEDGER_CATEGORY_CODE'
50523: ---------------------------------------------------------------------------------------------------------------
50524: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50525:
50526: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50527: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50528:
50529: IF xla_accounting_cache_pkg.GetValueChar
50530: (p_source_code => 'LEDGER_CATEGORY_CODE'
50531: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
50534: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
50535: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
50536: )
50537: THEN
50538: xla_ae_lines_pkg.BflowUpgEntry
50539: (p_business_method_code => l_bflow_method_code
50540: ,p_business_class_code => l_bflow_class_code
50541: ,p_balance_type => l_balance_type_code);
50542: ELSE
50574: , x_value_type_code => l_adr_value_type_code
50575: , p_side => 'NA'
50576: );
50577:
50578: xla_ae_lines_pkg.set_ccid(
50579: p_code_combination_id => l_ccid
50580: , p_value_type_code => l_adr_value_type_code
50581: , p_transaction_coa_id => l_adr_transaction_coa_id
50582: , p_accounting_coa_id => l_adr_accounting_coa_id
50610: xla_accounting_err_pkg.build_message
50611: (p_appli_s_name => 'XLA'
50612: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
50613: ,p_token_1 => 'LINE_NUMBER'
50614: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
50615: ,p_token_2 => 'LINE_TYPE_NAME'
50616: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
50617: l_component_type
50618: ,l_component_code
50646: --
50647: --
50648: ------------------------------------------------------------------------------------------------
50649: -- 4219869 Business Flow
50650: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50651: -- Prior Entry. Currently, the following code is always generated.
50652: ------------------------------------------------------------------------------------------------
50653: XLA_AE_LINES_PKG.ValidateCurrentLine;
50654:
50649: -- 4219869 Business Flow
50650: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50651: -- Prior Entry. Currently, the following code is always generated.
50652: ------------------------------------------------------------------------------------------------
50653: XLA_AE_LINES_PKG.ValidateCurrentLine;
50654:
50655: ------------------------------------------------------------------------------------
50656: -- 4219869 Business Flow
50657: -- Populated credit and debit amounts -- Need to generate this within IF
50655: ------------------------------------------------------------------------------------
50656: -- 4219869 Business Flow
50657: -- Populated credit and debit amounts -- Need to generate this within IF
50658: ------------------------------------------------------------------------------------
50659: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50660:
50661: ----------------------------------------------------------------------------------
50662: -- 4219869 Business Flow
50663: -- Update journal entry status -- Need to generate this within IF
50687: -- To allow MPA report to determine if it should generate report process
50688: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50689: ------------------------------------------------------------------------------------------
50690:
50691: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50692: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50693: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50694: -- call ADRs
50695: -- Bug 4922099
50688: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50689: ------------------------------------------------------------------------------------------
50690:
50691: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50692: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50693: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50694: -- call ADRs
50695: -- Bug 4922099
50696: --
50712: , x_value_type_code => l_adr_value_type_code
50713: , p_side => 'NA'
50714: );
50715:
50716: xla_ae_lines_pkg.set_ccid(
50717: p_code_combination_id => l_ccid
50718: , p_value_type_code => l_adr_value_type_code
50719: , p_transaction_coa_id => l_adr_transaction_coa_id
50720: , p_accounting_coa_id => l_adr_accounting_coa_id
50735:
50736: --
50737: -- Update the line information that should be overwritten
50738: --
50739: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50740: p_header_num => 1);
50741: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50742:
50743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50737: -- Update the line information that should be overwritten
50738: --
50739: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50740: p_header_num => 1);
50741: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50742:
50743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50744:
50745: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50739: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50740: p_header_num => 1);
50741: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50742:
50743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50744:
50745: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50746: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50747: END IF;
50742:
50743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50744:
50745: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50746: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50747: END IF;
50748:
50749: --
50750: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50749: --
50750: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50751: --
50752: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
50753: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
50754: ELSE
50755: ---------------------------------------------------------------------------------------------------
50756: -- 4262811a Switch Sign
50757: ---------------------------------------------------------------------------------------------------
50754: ELSE
50755: ---------------------------------------------------------------------------------------------------
50756: -- 4262811a Switch Sign
50757: ---------------------------------------------------------------------------------------------------
50758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50755: ---------------------------------------------------------------------------------------------------
50756: -- 4262811a Switch Sign
50757: ---------------------------------------------------------------------------------------------------
50758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50763: -- 5132302
50756: -- 4262811a Switch Sign
50757: ---------------------------------------------------------------------------------------------------
50758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50763: -- 5132302
50764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50757: ---------------------------------------------------------------------------------------------------
50758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50763: -- 5132302
50764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50765: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50763: -- 5132302
50764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50765: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50766:
50760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50763: -- 5132302
50764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50765: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50766:
50767: END IF;
50768:
50761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50763: -- 5132302
50764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50765: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50766:
50767: END IF;
50768:
50769: -- 4955764
50766:
50767: END IF;
50768:
50769: -- 4955764
50770: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50771: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50772:
50773:
50774: XLA_AE_LINES_PKG.ValidateCurrentLine;
50770: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50771: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50772:
50773:
50774: XLA_AE_LINES_PKG.ValidateCurrentLine;
50775: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50776:
50777: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50778: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50771: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50772:
50773:
50774: XLA_AE_LINES_PKG.ValidateCurrentLine;
50775: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50776:
50777: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50778: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50779: ,p_balance_type_code => l_balance_type_code);
50924: --
50925: -- bulk performance
50926: --
50927: l_balance_type_code VARCHAR2(1);
50928: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
50929: l_log_module VARCHAR2(240);
50930:
50931: --
50932: -- Upgrade strategy
50994: ') = 'N'
50995: THEN
50996:
50997: --
50998: XLA_AE_LINES_PKG.SetNewLine;
50999:
51000: p_balance_type_code := l_balance_type_code;
51001: -- set the flag so later we will know whether the gain loss line needs to be created
51002:
51006:
51007: --
51008: -- bulk performance
51009: --
51010: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
51011: p_header_num => 0); -- 4262811
51012: --
51013: -- set accounting line options
51014: --
51011: p_header_num => 0); -- 4262811
51012: --
51013: -- set accounting line options
51014: --
51015: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
51016: p_natural_side_code => 'C'
51017: , p_gain_or_loss_flag => 'N'
51018: , p_gl_transfer_mode_code => 'S'
51019: , p_acct_entry_type_code => 'A'
51025: --
51026: --
51027: -- set accounting line type info
51028: --
51029: xla_ae_lines_pkg.SetAcctLineType
51030: (p_component_type => l_component_type
51031: ,p_event_type_code => l_event_type_code
51032: ,p_line_definition_owner_code => l_line_definition_owner_code
51033: ,p_line_definition_code => l_line_definition_code
51039: ,p_event_class_code => l_event_class_code);
51040: --
51041: -- set accounting class
51042: --
51043: xla_ae_lines_pkg.SetAcctClass(
51044: p_accounting_class_code => 'UNEDISC'
51045: , p_ae_header_id => l_ae_header_id
51046: );
51047:
51047:
51048: --
51049: -- set rounding class
51050: --
51051: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51052: 'RECEIVABLE';
51053:
51054: --
51055: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51051: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51052: 'RECEIVABLE';
51053:
51054: --
51055: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51056: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51057: --
51058: -- bulk performance
51059: --
51052: 'RECEIVABLE';
51053:
51054: --
51055: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51056: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51057: --
51058: -- bulk performance
51059: --
51060: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51056: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51057: --
51058: -- bulk performance
51059: --
51060: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51061:
51062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51063: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51064:
51058: -- bulk performance
51059: --
51060: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51061:
51062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51063: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51064:
51065: -- 4955764
51066: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51063: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51064:
51065: -- 4955764
51066: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51067: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
51068:
51069: -- 4458381 Public Sector Enh
51070:
51106: l_rec_acct_attrs.array_num_value(15) := p_source_63;
51107: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51108: l_rec_acct_attrs.array_char_value(16) := p_source_64;
51109:
51110: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51111: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51112:
51113: ---------------------------------------------------------------------------------------------------------------
51114: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51107: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51108: l_rec_acct_attrs.array_char_value(16) := p_source_64;
51109:
51110: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51111: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51112:
51113: ---------------------------------------------------------------------------------------------------------------
51114: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51115: ---------------------------------------------------------------------------------------------------------------
51110: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51111: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51112:
51113: ---------------------------------------------------------------------------------------------------------------
51114: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51115: ---------------------------------------------------------------------------------------------------------------
51116: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51117:
51118: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51112:
51113: ---------------------------------------------------------------------------------------------------------------
51114: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51115: ---------------------------------------------------------------------------------------------------------------
51116: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51117:
51118: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51119: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51120:
51114: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51115: ---------------------------------------------------------------------------------------------------------------
51116: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51117:
51118: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51119: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51120:
51121: IF xla_accounting_cache_pkg.GetValueChar
51122: (p_source_code => 'LEDGER_CATEGORY_CODE'
51115: ---------------------------------------------------------------------------------------------------------------
51116: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51117:
51118: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51119: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51120:
51121: IF xla_accounting_cache_pkg.GetValueChar
51122: (p_source_code => 'LEDGER_CATEGORY_CODE'
51123: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
51126: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
51127: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
51128: )
51129: THEN
51130: xla_ae_lines_pkg.BflowUpgEntry
51131: (p_business_method_code => l_bflow_method_code
51132: ,p_business_class_code => l_bflow_class_code
51133: ,p_balance_type => l_balance_type_code);
51134: ELSE
51143: --
51144: -- call description
51145: --
51146:
51147: xla_ae_lines_pkg.SetLineDescription(
51148: p_ae_header_id => l_ae_header_id
51149: ,p_description => Description_1 (
51150: p_application_id => p_application_id
51151: , p_ae_header_id => l_ae_header_id
51175: , x_value_type_code => l_adr_value_type_code
51176: , p_side => 'NA'
51177: );
51178:
51179: xla_ae_lines_pkg.set_ccid(
51180: p_code_combination_id => l_ccid
51181: , p_value_type_code => l_adr_value_type_code
51182: , p_transaction_coa_id => l_adr_transaction_coa_id
51183: , p_accounting_coa_id => l_adr_accounting_coa_id
51208: );
51209:
51210: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
51211:
51212: xla_ae_lines_pkg.set_segment(
51213: p_to_segment_code => 'GL_BALANCING'
51214: , p_segment_value => l_segment
51215: , p_from_segment_code => l_adr_value_segment_code
51216: , p_from_combination_id => l_adr_value_combination_id
51252: xla_accounting_err_pkg.build_message
51253: (p_appli_s_name => 'XLA'
51254: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
51255: ,p_token_1 => 'LINE_NUMBER'
51256: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
51257: ,p_token_2 => 'LINE_TYPE_NAME'
51258: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
51259: l_component_type
51260: ,l_component_code
51288: --
51289: --
51290: ------------------------------------------------------------------------------------------------
51291: -- 4219869 Business Flow
51292: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51293: -- Prior Entry. Currently, the following code is always generated.
51294: ------------------------------------------------------------------------------------------------
51295: XLA_AE_LINES_PKG.ValidateCurrentLine;
51296:
51291: -- 4219869 Business Flow
51292: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51293: -- Prior Entry. Currently, the following code is always generated.
51294: ------------------------------------------------------------------------------------------------
51295: XLA_AE_LINES_PKG.ValidateCurrentLine;
51296:
51297: ------------------------------------------------------------------------------------
51298: -- 4219869 Business Flow
51299: -- Populated credit and debit amounts -- Need to generate this within IF
51297: ------------------------------------------------------------------------------------
51298: -- 4219869 Business Flow
51299: -- Populated credit and debit amounts -- Need to generate this within IF
51300: ------------------------------------------------------------------------------------
51301: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51302:
51303: ----------------------------------------------------------------------------------
51304: -- 4219869 Business Flow
51305: -- Update journal entry status -- Need to generate this within IF
51329: -- To allow MPA report to determine if it should generate report process
51330: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51331: ------------------------------------------------------------------------------------------
51332:
51333: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51334: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51335: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51336: -- call ADRs
51337: -- Bug 4922099
51330: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51331: ------------------------------------------------------------------------------------------
51332:
51333: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51334: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51335: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51336: -- call ADRs
51337: -- Bug 4922099
51338: --
51354: , x_value_type_code => l_adr_value_type_code
51355: , p_side => 'NA'
51356: );
51357:
51358: xla_ae_lines_pkg.set_ccid(
51359: p_code_combination_id => l_ccid
51360: , p_value_type_code => l_adr_value_type_code
51361: , p_transaction_coa_id => l_adr_transaction_coa_id
51362: , p_accounting_coa_id => l_adr_accounting_coa_id
51387: );
51388:
51389: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
51390:
51391: xla_ae_lines_pkg.set_segment(
51392: p_to_segment_code => 'GL_BALANCING'
51393: , p_segment_value => l_segment
51394: , p_from_segment_code => l_adr_value_segment_code
51395: , p_from_combination_id => l_adr_value_combination_id
51418:
51419: --
51420: -- Update the line information that should be overwritten
51421: --
51422: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51423: p_header_num => 1);
51424: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51425:
51426: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51420: -- Update the line information that should be overwritten
51421: --
51422: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51423: p_header_num => 1);
51424: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51425:
51426: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51427:
51428: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51422: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51423: p_header_num => 1);
51424: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51425:
51426: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51427:
51428: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51429: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51430: END IF;
51425:
51426: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51427:
51428: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51429: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51430: END IF;
51431:
51432: --
51433: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51432: --
51433: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51434: --
51435: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
51436: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
51437: ELSE
51438: ---------------------------------------------------------------------------------------------------
51439: -- 4262811a Switch Sign
51440: ---------------------------------------------------------------------------------------------------
51437: ELSE
51438: ---------------------------------------------------------------------------------------------------
51439: -- 4262811a Switch Sign
51440: ---------------------------------------------------------------------------------------------------
51441: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51442: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51443: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51444: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51445: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51438: ---------------------------------------------------------------------------------------------------
51439: -- 4262811a Switch Sign
51440: ---------------------------------------------------------------------------------------------------
51441: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51442: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51443: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51444: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51445: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51446: -- 5132302
51439: -- 4262811a Switch Sign
51440: ---------------------------------------------------------------------------------------------------
51441: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51442: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51443: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51444: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51445: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51446: -- 5132302
51447: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51440: ---------------------------------------------------------------------------------------------------
51441: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51442: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51443: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51444: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51445: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51446: -- 5132302
51447: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51448: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51441: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51442: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51443: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51444: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51445: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51446: -- 5132302
51447: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51448: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51449:
51443: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51444: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51445: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51446: -- 5132302
51447: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51448: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51449:
51450: END IF;
51451:
51444: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51445: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51446: -- 5132302
51447: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51448: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51449:
51450: END IF;
51451:
51452: -- 4955764
51449:
51450: END IF;
51451:
51452: -- 4955764
51453: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51454: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51455:
51456:
51457: XLA_AE_LINES_PKG.ValidateCurrentLine;
51453: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51454: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51455:
51456:
51457: XLA_AE_LINES_PKG.ValidateCurrentLine;
51458: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51459:
51460: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51461: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51454: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51455:
51456:
51457: XLA_AE_LINES_PKG.ValidateCurrentLine;
51458: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51459:
51460: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51461: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51462: ,p_balance_type_code => l_balance_type_code);
51605: --
51606: -- bulk performance
51607: --
51608: l_balance_type_code VARCHAR2(1);
51609: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
51610: l_log_module VARCHAR2(240);
51611:
51612: --
51613: -- Upgrade strategy
51675: ') = 'N'
51676: THEN
51677:
51678: --
51679: XLA_AE_LINES_PKG.SetNewLine;
51680:
51681: p_balance_type_code := l_balance_type_code;
51682: -- set the flag so later we will know whether the gain loss line needs to be created
51683:
51687:
51688: --
51689: -- bulk performance
51690: --
51691: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
51692: p_header_num => 0); -- 4262811
51693: --
51694: -- set accounting line options
51695: --
51692: p_header_num => 0); -- 4262811
51693: --
51694: -- set accounting line options
51695: --
51696: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
51697: p_natural_side_code => 'C'
51698: , p_gain_or_loss_flag => 'N'
51699: , p_gl_transfer_mode_code => 'S'
51700: , p_acct_entry_type_code => 'A'
51706: --
51707: --
51708: -- set accounting line type info
51709: --
51710: xla_ae_lines_pkg.SetAcctLineType
51711: (p_component_type => l_component_type
51712: ,p_event_type_code => l_event_type_code
51713: ,p_line_definition_owner_code => l_line_definition_owner_code
51714: ,p_line_definition_code => l_line_definition_code
51720: ,p_event_class_code => l_event_class_code);
51721: --
51722: -- set accounting class
51723: --
51724: xla_ae_lines_pkg.SetAcctClass(
51725: p_accounting_class_code => 'UNID'
51726: , p_ae_header_id => l_ae_header_id
51727: );
51728:
51728:
51729: --
51730: -- set rounding class
51731: --
51732: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51733: 'RECEIVABLE';
51734:
51735: --
51736: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51732: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51733: 'RECEIVABLE';
51734:
51735: --
51736: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51737: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51738: --
51739: -- bulk performance
51740: --
51733: 'RECEIVABLE';
51734:
51735: --
51736: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51737: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51738: --
51739: -- bulk performance
51740: --
51741: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51737: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51738: --
51739: -- bulk performance
51740: --
51741: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51742:
51743: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51744: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51745:
51739: -- bulk performance
51740: --
51741: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51742:
51743: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51744: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51745:
51746: -- 4955764
51747: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51743: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51744: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51745:
51746: -- 4955764
51747: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51748: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
51749:
51750: -- 4458381 Public Sector Enh
51751:
51787: l_rec_acct_attrs.array_num_value(15) := p_source_63;
51788: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51789: l_rec_acct_attrs.array_char_value(16) := p_source_64;
51790:
51791: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51792: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51793:
51794: ---------------------------------------------------------------------------------------------------------------
51795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51788: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51789: l_rec_acct_attrs.array_char_value(16) := p_source_64;
51790:
51791: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51792: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51793:
51794: ---------------------------------------------------------------------------------------------------------------
51795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51796: ---------------------------------------------------------------------------------------------------------------
51791: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51792: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51793:
51794: ---------------------------------------------------------------------------------------------------------------
51795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51796: ---------------------------------------------------------------------------------------------------------------
51797: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51798:
51799: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51793:
51794: ---------------------------------------------------------------------------------------------------------------
51795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51796: ---------------------------------------------------------------------------------------------------------------
51797: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51798:
51799: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51800: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51801:
51795: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51796: ---------------------------------------------------------------------------------------------------------------
51797: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51798:
51799: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51800: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51801:
51802: IF xla_accounting_cache_pkg.GetValueChar
51803: (p_source_code => 'LEDGER_CATEGORY_CODE'
51796: ---------------------------------------------------------------------------------------------------------------
51797: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51798:
51799: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51800: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51801:
51802: IF xla_accounting_cache_pkg.GetValueChar
51803: (p_source_code => 'LEDGER_CATEGORY_CODE'
51804: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
51807: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
51808: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
51809: )
51810: THEN
51811: xla_ae_lines_pkg.BflowUpgEntry
51812: (p_business_method_code => l_bflow_method_code
51813: ,p_business_class_code => l_bflow_class_code
51814: ,p_balance_type => l_balance_type_code);
51815: ELSE
51847: , x_value_type_code => l_adr_value_type_code
51848: , p_side => 'NA'
51849: );
51850:
51851: xla_ae_lines_pkg.set_ccid(
51852: p_code_combination_id => l_ccid
51853: , p_value_type_code => l_adr_value_type_code
51854: , p_transaction_coa_id => l_adr_transaction_coa_id
51855: , p_accounting_coa_id => l_adr_accounting_coa_id
51883: xla_accounting_err_pkg.build_message
51884: (p_appli_s_name => 'XLA'
51885: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
51886: ,p_token_1 => 'LINE_NUMBER'
51887: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
51888: ,p_token_2 => 'LINE_TYPE_NAME'
51889: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
51890: l_component_type
51891: ,l_component_code
51919: --
51920: --
51921: ------------------------------------------------------------------------------------------------
51922: -- 4219869 Business Flow
51923: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51924: -- Prior Entry. Currently, the following code is always generated.
51925: ------------------------------------------------------------------------------------------------
51926: XLA_AE_LINES_PKG.ValidateCurrentLine;
51927:
51922: -- 4219869 Business Flow
51923: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51924: -- Prior Entry. Currently, the following code is always generated.
51925: ------------------------------------------------------------------------------------------------
51926: XLA_AE_LINES_PKG.ValidateCurrentLine;
51927:
51928: ------------------------------------------------------------------------------------
51929: -- 4219869 Business Flow
51930: -- Populated credit and debit amounts -- Need to generate this within IF
51928: ------------------------------------------------------------------------------------
51929: -- 4219869 Business Flow
51930: -- Populated credit and debit amounts -- Need to generate this within IF
51931: ------------------------------------------------------------------------------------
51932: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51933:
51934: ----------------------------------------------------------------------------------
51935: -- 4219869 Business Flow
51936: -- Update journal entry status -- Need to generate this within IF
51960: -- To allow MPA report to determine if it should generate report process
51961: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51962: ------------------------------------------------------------------------------------------
51963:
51964: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51965: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51966: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51967: -- call ADRs
51968: -- Bug 4922099
51961: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51962: ------------------------------------------------------------------------------------------
51963:
51964: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51965: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51966: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51967: -- call ADRs
51968: -- Bug 4922099
51969: --
51985: , x_value_type_code => l_adr_value_type_code
51986: , p_side => 'NA'
51987: );
51988:
51989: xla_ae_lines_pkg.set_ccid(
51990: p_code_combination_id => l_ccid
51991: , p_value_type_code => l_adr_value_type_code
51992: , p_transaction_coa_id => l_adr_transaction_coa_id
51993: , p_accounting_coa_id => l_adr_accounting_coa_id
52008:
52009: --
52010: -- Update the line information that should be overwritten
52011: --
52012: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52013: p_header_num => 1);
52014: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52015:
52016: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52010: -- Update the line information that should be overwritten
52011: --
52012: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52013: p_header_num => 1);
52014: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52015:
52016: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52017:
52018: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52012: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52013: p_header_num => 1);
52014: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52015:
52016: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52017:
52018: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52019: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52020: END IF;
52015:
52016: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52017:
52018: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52019: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52020: END IF;
52021:
52022: --
52023: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52022: --
52023: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52024: --
52025: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
52026: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
52027: ELSE
52028: ---------------------------------------------------------------------------------------------------
52029: -- 4262811a Switch Sign
52030: ---------------------------------------------------------------------------------------------------
52027: ELSE
52028: ---------------------------------------------------------------------------------------------------
52029: -- 4262811a Switch Sign
52030: ---------------------------------------------------------------------------------------------------
52031: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52033: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52035: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52028: ---------------------------------------------------------------------------------------------------
52029: -- 4262811a Switch Sign
52030: ---------------------------------------------------------------------------------------------------
52031: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52033: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52035: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52036: -- 5132302
52029: -- 4262811a Switch Sign
52030: ---------------------------------------------------------------------------------------------------
52031: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52033: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52035: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52036: -- 5132302
52037: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52030: ---------------------------------------------------------------------------------------------------
52031: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52033: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52035: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52036: -- 5132302
52037: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52038: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52031: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52033: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52035: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52036: -- 5132302
52037: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52038: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52039:
52033: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52035: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52036: -- 5132302
52037: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52038: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52039:
52040: END IF;
52041:
52034: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52035: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52036: -- 5132302
52037: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52038: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52039:
52040: END IF;
52041:
52042: -- 4955764
52039:
52040: END IF;
52041:
52042: -- 4955764
52043: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52044: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52045:
52046:
52047: XLA_AE_LINES_PKG.ValidateCurrentLine;
52043: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52044: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52045:
52046:
52047: XLA_AE_LINES_PKG.ValidateCurrentLine;
52048: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52049:
52050: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52051: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52044: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52045:
52046:
52047: XLA_AE_LINES_PKG.ValidateCurrentLine;
52048: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52049:
52050: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52051: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52052: ,p_balance_type_code => l_balance_type_code);
52197: --
52198: -- bulk performance
52199: --
52200: l_balance_type_code VARCHAR2(1);
52201: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
52202: l_log_module VARCHAR2(240);
52203:
52204: --
52205: -- Upgrade strategy
52269: ') = 'N'
52270: THEN
52271:
52272: --
52273: XLA_AE_LINES_PKG.SetNewLine;
52274:
52275: p_balance_type_code := l_balance_type_code;
52276: -- set the flag so later we will know whether the gain loss line needs to be created
52277:
52281:
52282: --
52283: -- bulk performance
52284: --
52285: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
52286: p_header_num => 0); -- 4262811
52287: --
52288: -- set accounting line options
52289: --
52286: p_header_num => 0); -- 4262811
52287: --
52288: -- set accounting line options
52289: --
52290: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
52291: p_natural_side_code => 'C'
52292: , p_gain_or_loss_flag => 'N'
52293: , p_gl_transfer_mode_code => 'S'
52294: , p_acct_entry_type_code => 'A'
52300: --
52301: --
52302: -- set accounting line type info
52303: --
52304: xla_ae_lines_pkg.SetAcctLineType
52305: (p_component_type => l_component_type
52306: ,p_event_type_code => l_event_type_code
52307: ,p_line_definition_owner_code => l_line_definition_owner_code
52308: ,p_line_definition_code => l_line_definition_code
52314: ,p_event_class_code => l_event_class_code);
52315: --
52316: -- set accounting class
52317: --
52318: xla_ae_lines_pkg.SetAcctClass(
52319: p_accounting_class_code => 'WRITE_OFF'
52320: , p_ae_header_id => l_ae_header_id
52321: );
52322:
52322:
52323: --
52324: -- set rounding class
52325: --
52326: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52327: 'RECEIVABLE';
52328:
52329: --
52330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52326: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52327: 'RECEIVABLE';
52328:
52329: --
52330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52332: --
52333: -- bulk performance
52334: --
52327: 'RECEIVABLE';
52328:
52329: --
52330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52332: --
52333: -- bulk performance
52334: --
52335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52332: --
52333: -- bulk performance
52334: --
52335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52336:
52337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52339:
52333: -- bulk performance
52334: --
52335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52336:
52337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52339:
52340: -- 4955764
52341: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52339:
52340: -- 4955764
52341: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52342: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
52343:
52344: -- 4458381 Public Sector Enh
52345:
52381: l_rec_acct_attrs.array_num_value(15) := p_source_63;
52382: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52383: l_rec_acct_attrs.array_char_value(16) := p_source_64;
52384:
52385: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52386: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52387:
52388: ---------------------------------------------------------------------------------------------------------------
52389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52382: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52383: l_rec_acct_attrs.array_char_value(16) := p_source_64;
52384:
52385: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52386: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52387:
52388: ---------------------------------------------------------------------------------------------------------------
52389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52390: ---------------------------------------------------------------------------------------------------------------
52385: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52386: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52387:
52388: ---------------------------------------------------------------------------------------------------------------
52389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52390: ---------------------------------------------------------------------------------------------------------------
52391: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52392:
52393: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52387:
52388: ---------------------------------------------------------------------------------------------------------------
52389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52390: ---------------------------------------------------------------------------------------------------------------
52391: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52392:
52393: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52394: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52395:
52389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52390: ---------------------------------------------------------------------------------------------------------------
52391: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52392:
52393: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52394: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52395:
52396: IF xla_accounting_cache_pkg.GetValueChar
52397: (p_source_code => 'LEDGER_CATEGORY_CODE'
52390: ---------------------------------------------------------------------------------------------------------------
52391: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52392:
52393: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52394: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52395:
52396: IF xla_accounting_cache_pkg.GetValueChar
52397: (p_source_code => 'LEDGER_CATEGORY_CODE'
52398: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
52401: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
52402: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
52403: )
52404: THEN
52405: xla_ae_lines_pkg.BflowUpgEntry
52406: (p_business_method_code => l_bflow_method_code
52407: ,p_business_class_code => l_bflow_class_code
52408: ,p_balance_type => l_balance_type_code);
52409: ELSE
52441: , x_value_type_code => l_adr_value_type_code
52442: , p_side => 'NA'
52443: );
52444:
52445: xla_ae_lines_pkg.set_ccid(
52446: p_code_combination_id => l_ccid
52447: , p_value_type_code => l_adr_value_type_code
52448: , p_transaction_coa_id => l_adr_transaction_coa_id
52449: , p_accounting_coa_id => l_adr_accounting_coa_id
52477: xla_accounting_err_pkg.build_message
52478: (p_appli_s_name => 'XLA'
52479: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
52480: ,p_token_1 => 'LINE_NUMBER'
52481: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
52482: ,p_token_2 => 'LINE_TYPE_NAME'
52483: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
52484: l_component_type
52485: ,l_component_code
52513: --
52514: --
52515: ------------------------------------------------------------------------------------------------
52516: -- 4219869 Business Flow
52517: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52518: -- Prior Entry. Currently, the following code is always generated.
52519: ------------------------------------------------------------------------------------------------
52520: XLA_AE_LINES_PKG.ValidateCurrentLine;
52521:
52516: -- 4219869 Business Flow
52517: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52518: -- Prior Entry. Currently, the following code is always generated.
52519: ------------------------------------------------------------------------------------------------
52520: XLA_AE_LINES_PKG.ValidateCurrentLine;
52521:
52522: ------------------------------------------------------------------------------------
52523: -- 4219869 Business Flow
52524: -- Populated credit and debit amounts -- Need to generate this within IF
52522: ------------------------------------------------------------------------------------
52523: -- 4219869 Business Flow
52524: -- Populated credit and debit amounts -- Need to generate this within IF
52525: ------------------------------------------------------------------------------------
52526: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52527:
52528: ----------------------------------------------------------------------------------
52529: -- 4219869 Business Flow
52530: -- Update journal entry status -- Need to generate this within IF
52554: -- To allow MPA report to determine if it should generate report process
52555: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52556: ------------------------------------------------------------------------------------------
52557:
52558: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52559: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52560: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52561: -- call ADRs
52562: -- Bug 4922099
52555: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52556: ------------------------------------------------------------------------------------------
52557:
52558: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52559: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52560: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52561: -- call ADRs
52562: -- Bug 4922099
52563: --
52579: , x_value_type_code => l_adr_value_type_code
52580: , p_side => 'NA'
52581: );
52582:
52583: xla_ae_lines_pkg.set_ccid(
52584: p_code_combination_id => l_ccid
52585: , p_value_type_code => l_adr_value_type_code
52586: , p_transaction_coa_id => l_adr_transaction_coa_id
52587: , p_accounting_coa_id => l_adr_accounting_coa_id
52602:
52603: --
52604: -- Update the line information that should be overwritten
52605: --
52606: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52607: p_header_num => 1);
52608: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52609:
52610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52604: -- Update the line information that should be overwritten
52605: --
52606: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52607: p_header_num => 1);
52608: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52609:
52610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52611:
52612: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52606: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52607: p_header_num => 1);
52608: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52609:
52610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52611:
52612: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52613: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52614: END IF;
52609:
52610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52611:
52612: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52613: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52614: END IF;
52615:
52616: --
52617: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52616: --
52617: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52618: --
52619: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
52620: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
52621: ELSE
52622: ---------------------------------------------------------------------------------------------------
52623: -- 4262811a Switch Sign
52624: ---------------------------------------------------------------------------------------------------
52621: ELSE
52622: ---------------------------------------------------------------------------------------------------
52623: -- 4262811a Switch Sign
52624: ---------------------------------------------------------------------------------------------------
52625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52622: ---------------------------------------------------------------------------------------------------
52623: -- 4262811a Switch Sign
52624: ---------------------------------------------------------------------------------------------------
52625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52630: -- 5132302
52623: -- 4262811a Switch Sign
52624: ---------------------------------------------------------------------------------------------------
52625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52630: -- 5132302
52631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52624: ---------------------------------------------------------------------------------------------------
52625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52630: -- 5132302
52631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52632: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52630: -- 5132302
52631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52632: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52633:
52627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52630: -- 5132302
52631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52632: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52633:
52634: END IF;
52635:
52628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52630: -- 5132302
52631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52632: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52633:
52634: END IF;
52635:
52636: -- 4955764
52633:
52634: END IF;
52635:
52636: -- 4955764
52637: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52638: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52639:
52640:
52641: XLA_AE_LINES_PKG.ValidateCurrentLine;
52637: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52638: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52639:
52640:
52641: XLA_AE_LINES_PKG.ValidateCurrentLine;
52642: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52643:
52644: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52645: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52638: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52639:
52640:
52641: XLA_AE_LINES_PKG.ValidateCurrentLine;
52642: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52643:
52644: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52645: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52646: ,p_balance_type_code => l_balance_type_code);
53097: l_first_event_id NUMBER;
53098: l_last_event_id NUMBER;
53099:
53100: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
53101: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
53102: --
53103: --
53104: l_result BOOLEAN := TRUE;
53105: l_rows NUMBER := 1000;
53370: EXIT WHEN l_array_entity_id.COUNT = 0;
53371:
53372: -- initialize arrays
53373: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
53374: XLA_AE_LINES_PKG.g_rec_lines := NULL;
53375:
53376: --
53377: -- Bug 4458708
53378: --
53375:
53376: --
53377: -- Bug 4458708
53378: --
53379: XLA_AE_LINES_PKG.g_LineNumber := 0;
53380:
53381:
53382: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
53383: g_last_hdr_idx := l_array_event_id.LAST;
53519: --
53520: -- following sets the accounting attributes needed to reverse
53521: -- accounting for a distributeion
53522: --
53523: xla_ae_lines_pkg.SetTrxReversalAttrs
53524: (p_event_id => l_event_id
53525: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
53526: ,p_trx_reversal_source => l_trx_reversal_source);
53527:
53551: --
53552: -- insert dummy rows into lines gt table that were created due to
53553: -- transaction reversals
53554: --
53555: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
53556: l_result := XLA_AE_LINES_PKG.InsertLines;
53557: END IF;
53558:
53559: --
53552: -- insert dummy rows into lines gt table that were created due to
53553: -- transaction reversals
53554: --
53555: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
53556: l_result := XLA_AE_LINES_PKG.InsertLines;
53557: END IF;
53558:
53559: --
53560: -- reset the temp_line_num for each set of events fetched from header
53560: -- reset the temp_line_num for each set of events fetched from header
53561: -- cursor rather than doing it for each new event in line cursor
53562: -- Bug 3939231
53563: --
53564: xla_ae_lines_pkg.g_temp_line_num := 0;
53565:
53566:
53567:
53568: --
53628: END IF;
53629: --
53630: EXIT WHEN l_array_entity_id.count = 0;
53631:
53632: XLA_AE_LINES_PKG.g_rec_lines := null;
53633:
53634: --
53635: -- Bug 4458708
53636: --
53633:
53634: --
53635: -- Bug 4458708
53636: --
53637: XLA_AE_LINES_PKG.g_LineNumber := 0;
53638: --
53639: --
53640:
53641: FOR Idx IN 1..l_array_event_id.count LOOP
53705:
53706:
53707:
53708: --
53709: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
53710:
53711: l_acct_reversal_source := SUBSTR(NULL, 1,30);
53712:
53713: IF l_continue_with_lines THEN
53741: --
53742:
53743: -- No reversal code generated
53744:
53745: xla_ae_lines_pkg.SetAcctReversalAttrs
53746: (p_event_id => l_event_id
53747: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
53748: ,p_calculate_acctd_flag => l_calculate_acctd_flag
53749: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
53949:
53950: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
53951: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
53952: AND (l_actual_flag = 'A')) THEN
53953: XLA_AE_LINES_PKG.CreateGainOrLossLines(
53954: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
53955: ,p_application_id => p_application_id
53956: ,p_amb_context_code => 'DEFAULT'
53957: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
53982: END IF;
53983: END IF;
53984:
53985: END LOOP;
53986: l_result := XLA_AE_LINES_PKG.InsertLines ;
53987: end loop;
53988: close line_cur;
53989:
53990:
54484: l_first_event_id NUMBER;
54485: l_last_event_id NUMBER;
54486:
54487: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
54488: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
54489: --
54490: --
54491: l_result BOOLEAN := TRUE;
54492: l_rows NUMBER := 1000;
54746: EXIT WHEN l_array_entity_id.COUNT = 0;
54747:
54748: -- initialize arrays
54749: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
54750: XLA_AE_LINES_PKG.g_rec_lines := NULL;
54751:
54752: --
54753: -- Bug 4458708
54754: --
54751:
54752: --
54753: -- Bug 4458708
54754: --
54755: XLA_AE_LINES_PKG.g_LineNumber := 0;
54756:
54757:
54758: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
54759: g_last_hdr_idx := l_array_event_id.LAST;
54894: --
54895: -- following sets the accounting attributes needed to reverse
54896: -- accounting for a distributeion
54897: --
54898: xla_ae_lines_pkg.SetTrxReversalAttrs
54899: (p_event_id => l_event_id
54900: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
54901: ,p_trx_reversal_source => l_trx_reversal_source);
54902:
54926: --
54927: -- insert dummy rows into lines gt table that were created due to
54928: -- transaction reversals
54929: --
54930: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
54931: l_result := XLA_AE_LINES_PKG.InsertLines;
54932: END IF;
54933:
54934: --
54927: -- insert dummy rows into lines gt table that were created due to
54928: -- transaction reversals
54929: --
54930: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
54931: l_result := XLA_AE_LINES_PKG.InsertLines;
54932: END IF;
54933:
54934: --
54935: -- reset the temp_line_num for each set of events fetched from header
54935: -- reset the temp_line_num for each set of events fetched from header
54936: -- cursor rather than doing it for each new event in line cursor
54937: -- Bug 3939231
54938: --
54939: xla_ae_lines_pkg.g_temp_line_num := 0;
54940:
54941:
54942:
54943: --
55002: END IF;
55003: --
55004: EXIT WHEN l_array_entity_id.count = 0;
55005:
55006: XLA_AE_LINES_PKG.g_rec_lines := null;
55007:
55008: --
55009: -- Bug 4458708
55010: --
55007:
55008: --
55009: -- Bug 4458708
55010: --
55011: XLA_AE_LINES_PKG.g_LineNumber := 0;
55012: --
55013: --
55014:
55015: FOR Idx IN 1..l_array_event_id.count LOOP
55079:
55080:
55081:
55082: --
55083: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
55084:
55085: l_acct_reversal_source := SUBSTR(NULL, 1,30);
55086:
55087: IF l_continue_with_lines THEN
55115: --
55116:
55117: -- No reversal code generated
55118:
55119: xla_ae_lines_pkg.SetAcctReversalAttrs
55120: (p_event_id => l_event_id
55121: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
55122: ,p_calculate_acctd_flag => l_calculate_acctd_flag
55123: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
55195:
55196: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
55197: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
55198: AND (l_actual_flag = 'A')) THEN
55199: XLA_AE_LINES_PKG.CreateGainOrLossLines(
55200: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
55201: ,p_application_id => p_application_id
55202: ,p_amb_context_code => 'DEFAULT'
55203: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
55228: END IF;
55229: END IF;
55230:
55231: END LOOP;
55232: l_result := XLA_AE_LINES_PKG.InsertLines ;
55233: end loop;
55234: close line_cur;
55235:
55236:
55773: l_first_event_id NUMBER;
55774: l_last_event_id NUMBER;
55775:
55776: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
55777: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
55778: --
55779: --
55780: l_result BOOLEAN := TRUE;
55781: l_rows NUMBER := 1000;
56065: EXIT WHEN l_array_entity_id.COUNT = 0;
56066:
56067: -- initialize arrays
56068: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
56069: XLA_AE_LINES_PKG.g_rec_lines := NULL;
56070:
56071: --
56072: -- Bug 4458708
56073: --
56070:
56071: --
56072: -- Bug 4458708
56073: --
56074: XLA_AE_LINES_PKG.g_LineNumber := 0;
56075:
56076:
56077: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
56078: g_last_hdr_idx := l_array_event_id.LAST;
56208: --
56209: -- following sets the accounting attributes needed to reverse
56210: -- accounting for a distributeion
56211: --
56212: xla_ae_lines_pkg.SetTrxReversalAttrs
56213: (p_event_id => l_event_id
56214: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
56215: ,p_trx_reversal_source => l_trx_reversal_source);
56216:
56240: --
56241: -- insert dummy rows into lines gt table that were created due to
56242: -- transaction reversals
56243: --
56244: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
56245: l_result := XLA_AE_LINES_PKG.InsertLines;
56246: END IF;
56247:
56248: --
56241: -- insert dummy rows into lines gt table that were created due to
56242: -- transaction reversals
56243: --
56244: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
56245: l_result := XLA_AE_LINES_PKG.InsertLines;
56246: END IF;
56247:
56248: --
56249: -- reset the temp_line_num for each set of events fetched from header
56249: -- reset the temp_line_num for each set of events fetched from header
56250: -- cursor rather than doing it for each new event in line cursor
56251: -- Bug 3939231
56252: --
56253: xla_ae_lines_pkg.g_temp_line_num := 0;
56254:
56255:
56256:
56257: --
56322: END IF;
56323: --
56324: EXIT WHEN l_array_entity_id.count = 0;
56325:
56326: XLA_AE_LINES_PKG.g_rec_lines := null;
56327:
56328: --
56329: -- Bug 4458708
56330: --
56327:
56328: --
56329: -- Bug 4458708
56330: --
56331: XLA_AE_LINES_PKG.g_LineNumber := 0;
56332: --
56333: --
56334:
56335: FOR Idx IN 1..l_array_event_id.count LOOP
56399:
56400:
56401:
56402: --
56403: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
56404:
56405: l_acct_reversal_source := SUBSTR(NULL, 1,30);
56406:
56407: IF l_continue_with_lines THEN
56435: --
56436:
56437: -- No reversal code generated
56438:
56439: xla_ae_lines_pkg.SetAcctReversalAttrs
56440: (p_event_id => l_event_id
56441: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
56442: ,p_calculate_acctd_flag => l_calculate_acctd_flag
56443: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
56814:
56815: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
56816: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
56817: AND (l_actual_flag = 'A')) THEN
56818: XLA_AE_LINES_PKG.CreateGainOrLossLines(
56819: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
56820: ,p_application_id => p_application_id
56821: ,p_amb_context_code => 'DEFAULT'
56822: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
56847: END IF;
56848: END IF;
56849:
56850: END LOOP;
56851: l_result := XLA_AE_LINES_PKG.InsertLines ;
56852: end loop;
56853: close line_cur;
56854:
56855:
57364: l_first_event_id NUMBER;
57365: l_last_event_id NUMBER;
57366:
57367: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
57368: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
57369: --
57370: --
57371: l_result BOOLEAN := TRUE;
57372: l_rows NUMBER := 1000;
57637: EXIT WHEN l_array_entity_id.COUNT = 0;
57638:
57639: -- initialize arrays
57640: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
57641: XLA_AE_LINES_PKG.g_rec_lines := NULL;
57642:
57643: --
57644: -- Bug 4458708
57645: --
57642:
57643: --
57644: -- Bug 4458708
57645: --
57646: XLA_AE_LINES_PKG.g_LineNumber := 0;
57647:
57648:
57649: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
57650: g_last_hdr_idx := l_array_event_id.LAST;
57787: --
57788: -- following sets the accounting attributes needed to reverse
57789: -- accounting for a distributeion
57790: --
57791: xla_ae_lines_pkg.SetTrxReversalAttrs
57792: (p_event_id => l_event_id
57793: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
57794: ,p_trx_reversal_source => l_trx_reversal_source);
57795:
57819: --
57820: -- insert dummy rows into lines gt table that were created due to
57821: -- transaction reversals
57822: --
57823: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
57824: l_result := XLA_AE_LINES_PKG.InsertLines;
57825: END IF;
57826:
57827: --
57820: -- insert dummy rows into lines gt table that were created due to
57821: -- transaction reversals
57822: --
57823: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
57824: l_result := XLA_AE_LINES_PKG.InsertLines;
57825: END IF;
57826:
57827: --
57828: -- reset the temp_line_num for each set of events fetched from header
57828: -- reset the temp_line_num for each set of events fetched from header
57829: -- cursor rather than doing it for each new event in line cursor
57830: -- Bug 3939231
57831: --
57832: xla_ae_lines_pkg.g_temp_line_num := 0;
57833:
57834:
57835:
57836: --
57896: END IF;
57897: --
57898: EXIT WHEN l_array_entity_id.count = 0;
57899:
57900: XLA_AE_LINES_PKG.g_rec_lines := null;
57901:
57902: --
57903: -- Bug 4458708
57904: --
57901:
57902: --
57903: -- Bug 4458708
57904: --
57905: XLA_AE_LINES_PKG.g_LineNumber := 0;
57906: --
57907: --
57908:
57909: FOR Idx IN 1..l_array_event_id.count LOOP
57973:
57974:
57975:
57976: --
57977: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
57978:
57979: l_acct_reversal_source := SUBSTR(NULL, 1,30);
57980:
57981: IF l_continue_with_lines THEN
58009: --
58010:
58011: -- No reversal code generated
58012:
58013: xla_ae_lines_pkg.SetAcctReversalAttrs
58014: (p_event_id => l_event_id
58015: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
58016: ,p_calculate_acctd_flag => l_calculate_acctd_flag
58017: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
58285:
58286: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
58287: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
58288: AND (l_actual_flag = 'A')) THEN
58289: XLA_AE_LINES_PKG.CreateGainOrLossLines(
58290: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
58291: ,p_application_id => p_application_id
58292: ,p_amb_context_code => 'DEFAULT'
58293: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
58318: END IF;
58319: END IF;
58320:
58321: END LOOP;
58322: l_result := XLA_AE_LINES_PKG.InsertLines ;
58323: end loop;
58324: close line_cur;
58325:
58326:
58820: l_first_event_id NUMBER;
58821: l_last_event_id NUMBER;
58822:
58823: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
58824: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
58825: --
58826: --
58827: l_result BOOLEAN := TRUE;
58828: l_rows NUMBER := 1000;
59082: EXIT WHEN l_array_entity_id.COUNT = 0;
59083:
59084: -- initialize arrays
59085: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
59086: XLA_AE_LINES_PKG.g_rec_lines := NULL;
59087:
59088: --
59089: -- Bug 4458708
59090: --
59087:
59088: --
59089: -- Bug 4458708
59090: --
59091: XLA_AE_LINES_PKG.g_LineNumber := 0;
59092:
59093:
59094: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
59095: g_last_hdr_idx := l_array_event_id.LAST;
59230: --
59231: -- following sets the accounting attributes needed to reverse
59232: -- accounting for a distributeion
59233: --
59234: xla_ae_lines_pkg.SetTrxReversalAttrs
59235: (p_event_id => l_event_id
59236: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
59237: ,p_trx_reversal_source => l_trx_reversal_source);
59238:
59262: --
59263: -- insert dummy rows into lines gt table that were created due to
59264: -- transaction reversals
59265: --
59266: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
59267: l_result := XLA_AE_LINES_PKG.InsertLines;
59268: END IF;
59269:
59270: --
59263: -- insert dummy rows into lines gt table that were created due to
59264: -- transaction reversals
59265: --
59266: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
59267: l_result := XLA_AE_LINES_PKG.InsertLines;
59268: END IF;
59269:
59270: --
59271: -- reset the temp_line_num for each set of events fetched from header
59271: -- reset the temp_line_num for each set of events fetched from header
59272: -- cursor rather than doing it for each new event in line cursor
59273: -- Bug 3939231
59274: --
59275: xla_ae_lines_pkg.g_temp_line_num := 0;
59276:
59277:
59278:
59279: --
59338: END IF;
59339: --
59340: EXIT WHEN l_array_entity_id.count = 0;
59341:
59342: XLA_AE_LINES_PKG.g_rec_lines := null;
59343:
59344: --
59345: -- Bug 4458708
59346: --
59343:
59344: --
59345: -- Bug 4458708
59346: --
59347: XLA_AE_LINES_PKG.g_LineNumber := 0;
59348: --
59349: --
59350:
59351: FOR Idx IN 1..l_array_event_id.count LOOP
59415:
59416:
59417:
59418: --
59419: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
59420:
59421: l_acct_reversal_source := SUBSTR(NULL, 1,30);
59422:
59423: IF l_continue_with_lines THEN
59451: --
59452:
59453: -- No reversal code generated
59454:
59455: xla_ae_lines_pkg.SetAcctReversalAttrs
59456: (p_event_id => l_event_id
59457: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
59458: ,p_calculate_acctd_flag => l_calculate_acctd_flag
59459: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
59531:
59532: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
59533: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
59534: AND (l_actual_flag = 'A')) THEN
59535: XLA_AE_LINES_PKG.CreateGainOrLossLines(
59536: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
59537: ,p_application_id => p_application_id
59538: ,p_amb_context_code => 'DEFAULT'
59539: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
59564: END IF;
59565: END IF;
59566:
59567: END LOOP;
59568: l_result := XLA_AE_LINES_PKG.InsertLines ;
59569: end loop;
59570: close line_cur;
59571:
59572:
60066: l_first_event_id NUMBER;
60067: l_last_event_id NUMBER;
60068:
60069: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
60070: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
60071: --
60072: --
60073: l_result BOOLEAN := TRUE;
60074: l_rows NUMBER := 1000;
60328: EXIT WHEN l_array_entity_id.COUNT = 0;
60329:
60330: -- initialize arrays
60331: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
60332: XLA_AE_LINES_PKG.g_rec_lines := NULL;
60333:
60334: --
60335: -- Bug 4458708
60336: --
60333:
60334: --
60335: -- Bug 4458708
60336: --
60337: XLA_AE_LINES_PKG.g_LineNumber := 0;
60338:
60339:
60340: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
60341: g_last_hdr_idx := l_array_event_id.LAST;
60476: --
60477: -- following sets the accounting attributes needed to reverse
60478: -- accounting for a distributeion
60479: --
60480: xla_ae_lines_pkg.SetTrxReversalAttrs
60481: (p_event_id => l_event_id
60482: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
60483: ,p_trx_reversal_source => l_trx_reversal_source);
60484:
60508: --
60509: -- insert dummy rows into lines gt table that were created due to
60510: -- transaction reversals
60511: --
60512: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
60513: l_result := XLA_AE_LINES_PKG.InsertLines;
60514: END IF;
60515:
60516: --
60509: -- insert dummy rows into lines gt table that were created due to
60510: -- transaction reversals
60511: --
60512: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
60513: l_result := XLA_AE_LINES_PKG.InsertLines;
60514: END IF;
60515:
60516: --
60517: -- reset the temp_line_num for each set of events fetched from header
60517: -- reset the temp_line_num for each set of events fetched from header
60518: -- cursor rather than doing it for each new event in line cursor
60519: -- Bug 3939231
60520: --
60521: xla_ae_lines_pkg.g_temp_line_num := 0;
60522:
60523:
60524:
60525: --
60584: END IF;
60585: --
60586: EXIT WHEN l_array_entity_id.count = 0;
60587:
60588: XLA_AE_LINES_PKG.g_rec_lines := null;
60589:
60590: --
60591: -- Bug 4458708
60592: --
60589:
60590: --
60591: -- Bug 4458708
60592: --
60593: XLA_AE_LINES_PKG.g_LineNumber := 0;
60594: --
60595: --
60596:
60597: FOR Idx IN 1..l_array_event_id.count LOOP
60661:
60662:
60663:
60664: --
60665: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
60666:
60667: l_acct_reversal_source := SUBSTR(NULL, 1,30);
60668:
60669: IF l_continue_with_lines THEN
60697: --
60698:
60699: -- No reversal code generated
60700:
60701: xla_ae_lines_pkg.SetAcctReversalAttrs
60702: (p_event_id => l_event_id
60703: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
60704: ,p_calculate_acctd_flag => l_calculate_acctd_flag
60705: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
60777:
60778: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
60779: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
60780: AND (l_actual_flag = 'A')) THEN
60781: XLA_AE_LINES_PKG.CreateGainOrLossLines(
60782: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
60783: ,p_application_id => p_application_id
60784: ,p_amb_context_code => 'DEFAULT'
60785: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
60810: END IF;
60811: END IF;
60812:
60813: END LOOP;
60814: l_result := XLA_AE_LINES_PKG.InsertLines ;
60815: end loop;
60816: close line_cur;
60817:
60818:
61332: l_first_event_id NUMBER;
61333: l_last_event_id NUMBER;
61334:
61335: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
61336: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
61337: --
61338: --
61339: l_result BOOLEAN := TRUE;
61340: l_rows NUMBER := 1000;
61608: EXIT WHEN l_array_entity_id.COUNT = 0;
61609:
61610: -- initialize arrays
61611: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
61612: XLA_AE_LINES_PKG.g_rec_lines := NULL;
61613:
61614: --
61615: -- Bug 4458708
61616: --
61613:
61614: --
61615: -- Bug 4458708
61616: --
61617: XLA_AE_LINES_PKG.g_LineNumber := 0;
61618:
61619:
61620: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
61621: g_last_hdr_idx := l_array_event_id.LAST;
61758: --
61759: -- following sets the accounting attributes needed to reverse
61760: -- accounting for a distributeion
61761: --
61762: xla_ae_lines_pkg.SetTrxReversalAttrs
61763: (p_event_id => l_event_id
61764: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
61765: ,p_trx_reversal_source => l_trx_reversal_source);
61766:
61790: --
61791: -- insert dummy rows into lines gt table that were created due to
61792: -- transaction reversals
61793: --
61794: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
61795: l_result := XLA_AE_LINES_PKG.InsertLines;
61796: END IF;
61797:
61798: --
61791: -- insert dummy rows into lines gt table that were created due to
61792: -- transaction reversals
61793: --
61794: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
61795: l_result := XLA_AE_LINES_PKG.InsertLines;
61796: END IF;
61797:
61798: --
61799: -- reset the temp_line_num for each set of events fetched from header
61799: -- reset the temp_line_num for each set of events fetched from header
61800: -- cursor rather than doing it for each new event in line cursor
61801: -- Bug 3939231
61802: --
61803: xla_ae_lines_pkg.g_temp_line_num := 0;
61804:
61805:
61806:
61807: --
61868: END IF;
61869: --
61870: EXIT WHEN l_array_entity_id.count = 0;
61871:
61872: XLA_AE_LINES_PKG.g_rec_lines := null;
61873:
61874: --
61875: -- Bug 4458708
61876: --
61873:
61874: --
61875: -- Bug 4458708
61876: --
61877: XLA_AE_LINES_PKG.g_LineNumber := 0;
61878: --
61879: --
61880:
61881: FOR Idx IN 1..l_array_event_id.count LOOP
61945:
61946:
61947:
61948: --
61949: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
61950:
61951: l_acct_reversal_source := SUBSTR(NULL, 1,30);
61952:
61953: IF l_continue_with_lines THEN
61981: --
61982:
61983: -- No reversal code generated
61984:
61985: xla_ae_lines_pkg.SetAcctReversalAttrs
61986: (p_event_id => l_event_id
61987: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
61988: ,p_calculate_acctd_flag => l_calculate_acctd_flag
61989: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
62260:
62261: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
62262: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
62263: AND (l_actual_flag = 'A')) THEN
62264: XLA_AE_LINES_PKG.CreateGainOrLossLines(
62265: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
62266: ,p_application_id => p_application_id
62267: ,p_amb_context_code => 'DEFAULT'
62268: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
62293: END IF;
62294: END IF;
62295:
62296: END LOOP;
62297: l_result := XLA_AE_LINES_PKG.InsertLines ;
62298: end loop;
62299: close line_cur;
62300:
62301:
62817: l_first_event_id NUMBER;
62818: l_last_event_id NUMBER;
62819:
62820: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
62821: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
62822: --
62823: --
62824: l_result BOOLEAN := TRUE;
62825: l_rows NUMBER := 1000;
63097: EXIT WHEN l_array_entity_id.COUNT = 0;
63098:
63099: -- initialize arrays
63100: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
63101: XLA_AE_LINES_PKG.g_rec_lines := NULL;
63102:
63103: --
63104: -- Bug 4458708
63105: --
63102:
63103: --
63104: -- Bug 4458708
63105: --
63106: XLA_AE_LINES_PKG.g_LineNumber := 0;
63107:
63108:
63109: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
63110: g_last_hdr_idx := l_array_event_id.LAST;
63250: --
63251: -- following sets the accounting attributes needed to reverse
63252: -- accounting for a distributeion
63253: --
63254: xla_ae_lines_pkg.SetTrxReversalAttrs
63255: (p_event_id => l_event_id
63256: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
63257: ,p_trx_reversal_source => l_trx_reversal_source);
63258:
63282: --
63283: -- insert dummy rows into lines gt table that were created due to
63284: -- transaction reversals
63285: --
63286: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
63287: l_result := XLA_AE_LINES_PKG.InsertLines;
63288: END IF;
63289:
63290: --
63283: -- insert dummy rows into lines gt table that were created due to
63284: -- transaction reversals
63285: --
63286: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
63287: l_result := XLA_AE_LINES_PKG.InsertLines;
63288: END IF;
63289:
63290: --
63291: -- reset the temp_line_num for each set of events fetched from header
63291: -- reset the temp_line_num for each set of events fetched from header
63292: -- cursor rather than doing it for each new event in line cursor
63293: -- Bug 3939231
63294: --
63295: xla_ae_lines_pkg.g_temp_line_num := 0;
63296:
63297:
63298:
63299: --
63360: END IF;
63361: --
63362: EXIT WHEN l_array_entity_id.count = 0;
63363:
63364: XLA_AE_LINES_PKG.g_rec_lines := null;
63365:
63366: --
63367: -- Bug 4458708
63368: --
63365:
63366: --
63367: -- Bug 4458708
63368: --
63369: XLA_AE_LINES_PKG.g_LineNumber := 0;
63370: --
63371: --
63372:
63373: FOR Idx IN 1..l_array_event_id.count LOOP
63437:
63438:
63439:
63440: --
63441: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
63442:
63443: l_acct_reversal_source := SUBSTR(NULL, 1,30);
63444:
63445: IF l_continue_with_lines THEN
63473: --
63474:
63475: -- No reversal code generated
63476:
63477: xla_ae_lines_pkg.SetAcctReversalAttrs
63478: (p_event_id => l_event_id
63479: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
63480: ,p_calculate_acctd_flag => l_calculate_acctd_flag
63481: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
63789:
63790: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
63791: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
63792: AND (l_actual_flag = 'A')) THEN
63793: XLA_AE_LINES_PKG.CreateGainOrLossLines(
63794: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
63795: ,p_application_id => p_application_id
63796: ,p_amb_context_code => 'DEFAULT'
63797: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
63822: END IF;
63823: END IF;
63824:
63825: END LOOP;
63826: l_result := XLA_AE_LINES_PKG.InsertLines ;
63827: end loop;
63828: close line_cur;
63829:
63830:
64482: l_first_event_id NUMBER;
64483: l_last_event_id NUMBER;
64484:
64485: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
64486: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
64487: --
64488: --
64489: l_result BOOLEAN := TRUE;
64490: l_rows NUMBER := 1000;
64854: EXIT WHEN l_array_entity_id.COUNT = 0;
64855:
64856: -- initialize arrays
64857: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
64858: XLA_AE_LINES_PKG.g_rec_lines := NULL;
64859:
64860: --
64861: -- Bug 4458708
64862: --
64859:
64860: --
64861: -- Bug 4458708
64862: --
64863: XLA_AE_LINES_PKG.g_LineNumber := 0;
64864:
64865:
64866: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
64867: g_last_hdr_idx := l_array_event_id.LAST;
65014: --
65015: -- following sets the accounting attributes needed to reverse
65016: -- accounting for a distributeion
65017: --
65018: xla_ae_lines_pkg.SetTrxReversalAttrs
65019: (p_event_id => l_event_id
65020: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
65021: ,p_trx_reversal_source => l_trx_reversal_source);
65022:
65046: --
65047: -- insert dummy rows into lines gt table that were created due to
65048: -- transaction reversals
65049: --
65050: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
65051: l_result := XLA_AE_LINES_PKG.InsertLines;
65052: END IF;
65053:
65054: --
65047: -- insert dummy rows into lines gt table that were created due to
65048: -- transaction reversals
65049: --
65050: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
65051: l_result := XLA_AE_LINES_PKG.InsertLines;
65052: END IF;
65053:
65054: --
65055: -- reset the temp_line_num for each set of events fetched from header
65055: -- reset the temp_line_num for each set of events fetched from header
65056: -- cursor rather than doing it for each new event in line cursor
65057: -- Bug 3939231
65058: --
65059: xla_ae_lines_pkg.g_temp_line_num := 0;
65060:
65061:
65062:
65063: --
65141: END IF;
65142: --
65143: EXIT WHEN l_array_entity_id.count = 0;
65144:
65145: XLA_AE_LINES_PKG.g_rec_lines := null;
65146:
65147: --
65148: -- Bug 4458708
65149: --
65146:
65147: --
65148: -- Bug 4458708
65149: --
65150: XLA_AE_LINES_PKG.g_LineNumber := 0;
65151: --
65152: --
65153:
65154: FOR Idx IN 1..l_array_event_id.count LOOP
65218:
65219:
65220:
65221: --
65222: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
65223:
65224: l_acct_reversal_source := SUBSTR(NULL, 1,30);
65225:
65226: IF l_continue_with_lines THEN
65254: --
65255:
65256: -- No reversal code generated
65257:
65258: xla_ae_lines_pkg.SetAcctReversalAttrs
65259: (p_event_id => l_event_id
65260: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
65261: ,p_calculate_acctd_flag => l_calculate_acctd_flag
65262: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
66613:
66614: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
66615: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
66616: AND (l_actual_flag = 'A')) THEN
66617: XLA_AE_LINES_PKG.CreateGainOrLossLines(
66618: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
66619: ,p_application_id => p_application_id
66620: ,p_amb_context_code => 'DEFAULT'
66621: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
66646: END IF;
66647: END IF;
66648:
66649: END LOOP;
66650: l_result := XLA_AE_LINES_PKG.InsertLines ;
66651: end loop;
66652: close line_cur;
66653:
66654:
66781:
66782: --
66783: -- initialize array of lines with NULL
66784: --
66785: xla_ae_lines_pkg.SetNullLine;
66786:
66787: --
66788: -- initialize header extract count -- Bug 4865292
66789: --