4071: --
4072: -- bulk performance
4073: --
4074: l_balance_type_code VARCHAR2(1);
4075: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
4076: l_log_module VARCHAR2(240);
4077:
4078: --
4079: -- Upgrade strategy
4141: ') <> 'ENDORSEMENT'
4142: THEN
4143:
4144: --
4145: XLA_AE_LINES_PKG.SetNewLine;
4146:
4147: p_balance_type_code := l_balance_type_code;
4148: -- set the flag so later we will know whether the gain loss line needs to be created
4149:
4153:
4154: --
4155: -- bulk performance
4156: --
4157: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
4158: p_header_num => 0); -- 4262811
4159: --
4160: -- set accounting line options
4161: --
4158: p_header_num => 0); -- 4262811
4159: --
4160: -- set accounting line options
4161: --
4162: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
4163: p_natural_side_code => 'C'
4164: , p_gain_or_loss_flag => 'N'
4165: , p_gl_transfer_mode_code => 'S'
4166: , p_acct_entry_type_code => 'A'
4172: --
4173: --
4174: -- set accounting line type info
4175: --
4176: xla_ae_lines_pkg.SetAcctLineType
4177: (p_component_type => l_component_type
4178: ,p_event_type_code => l_event_type_code
4179: ,p_line_definition_owner_code => l_line_definition_owner_code
4180: ,p_line_definition_code => l_line_definition_code
4186: ,p_event_class_code => l_event_class_code);
4187: --
4188: -- set accounting class
4189: --
4190: xla_ae_lines_pkg.SetAcctClass(
4191: p_accounting_class_code => 'ADJ'
4192: , p_ae_header_id => l_ae_header_id
4193: );
4194:
4194:
4195: --
4196: -- set rounding class
4197: --
4198: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4199: 'RECEIVABLE';
4200:
4201: --
4202: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4198: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4199: 'RECEIVABLE';
4200:
4201: --
4202: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4203: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4204: --
4205: -- bulk performance
4206: --
4199: 'RECEIVABLE';
4200:
4201: --
4202: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4203: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4204: --
4205: -- bulk performance
4206: --
4207: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4203: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4204: --
4205: -- bulk performance
4206: --
4207: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4208:
4209: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4210: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4211:
4205: -- bulk performance
4206: --
4207: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4208:
4209: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4210: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4211:
4212: -- 4955764
4213: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4209: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4210: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4211:
4212: -- 4955764
4213: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4214: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
4215:
4216: -- 4458381 Public Sector Enh
4217:
4243: l_rec_acct_attrs.array_num_value(10) := p_source_31;
4244: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4245: l_rec_acct_attrs.array_char_value(11) := p_source_32;
4246:
4247: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4248: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4249:
4250: ---------------------------------------------------------------------------------------------------------------
4251: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4244: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4245: l_rec_acct_attrs.array_char_value(11) := p_source_32;
4246:
4247: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4248: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4249:
4250: ---------------------------------------------------------------------------------------------------------------
4251: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4252: ---------------------------------------------------------------------------------------------------------------
4247: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4248: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4249:
4250: ---------------------------------------------------------------------------------------------------------------
4251: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4252: ---------------------------------------------------------------------------------------------------------------
4253: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4254:
4255: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4249:
4250: ---------------------------------------------------------------------------------------------------------------
4251: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4252: ---------------------------------------------------------------------------------------------------------------
4253: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4254:
4255: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4256: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4257:
4251: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4252: ---------------------------------------------------------------------------------------------------------------
4253: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4254:
4255: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4256: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4257:
4258: IF xla_accounting_cache_pkg.GetValueChar
4259: (p_source_code => 'LEDGER_CATEGORY_CODE'
4252: ---------------------------------------------------------------------------------------------------------------
4253: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4254:
4255: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4256: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4257:
4258: IF xla_accounting_cache_pkg.GetValueChar
4259: (p_source_code => 'LEDGER_CATEGORY_CODE'
4260: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
4263: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
4264: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
4265: )
4266: THEN
4267: xla_ae_lines_pkg.BflowUpgEntry
4268: (p_business_method_code => l_bflow_method_code
4269: ,p_business_class_code => l_bflow_class_code
4270: ,p_balance_type => l_balance_type_code);
4271: ELSE
4303: , x_value_type_code => l_adr_value_type_code
4304: , p_side => 'NA'
4305: );
4306:
4307: xla_ae_lines_pkg.set_ccid(
4308: p_code_combination_id => l_ccid
4309: , p_value_type_code => l_adr_value_type_code
4310: , p_transaction_coa_id => l_adr_transaction_coa_id
4311: , p_accounting_coa_id => l_adr_accounting_coa_id
4339: xla_accounting_err_pkg.build_message
4340: (p_appli_s_name => 'XLA'
4341: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
4342: ,p_token_1 => 'LINE_NUMBER'
4343: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
4344: ,p_token_2 => 'LINE_TYPE_NAME'
4345: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
4346: l_component_type
4347: ,l_component_code
4375: --
4376: --
4377: ------------------------------------------------------------------------------------------------
4378: -- 4219869 Business Flow
4379: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4380: -- Prior Entry. Currently, the following code is always generated.
4381: ------------------------------------------------------------------------------------------------
4382: XLA_AE_LINES_PKG.ValidateCurrentLine;
4383:
4378: -- 4219869 Business Flow
4379: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4380: -- Prior Entry. Currently, the following code is always generated.
4381: ------------------------------------------------------------------------------------------------
4382: XLA_AE_LINES_PKG.ValidateCurrentLine;
4383:
4384: ------------------------------------------------------------------------------------
4385: -- 4219869 Business Flow
4386: -- Populated credit and debit amounts -- Need to generate this within IF
4384: ------------------------------------------------------------------------------------
4385: -- 4219869 Business Flow
4386: -- Populated credit and debit amounts -- Need to generate this within IF
4387: ------------------------------------------------------------------------------------
4388: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4389:
4390: ----------------------------------------------------------------------------------
4391: -- 4219869 Business Flow
4392: -- Update journal entry status -- Need to generate this within IF
4416: -- To allow MPA report to determine if it should generate report process
4417: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4418: ------------------------------------------------------------------------------------------
4419:
4420: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4421: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4422: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4423: -- call ADRs
4424: -- Bug 4922099
4417: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4418: ------------------------------------------------------------------------------------------
4419:
4420: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4421: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4422: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4423: -- call ADRs
4424: -- Bug 4922099
4425: --
4441: , x_value_type_code => l_adr_value_type_code
4442: , p_side => 'NA'
4443: );
4444:
4445: xla_ae_lines_pkg.set_ccid(
4446: p_code_combination_id => l_ccid
4447: , p_value_type_code => l_adr_value_type_code
4448: , p_transaction_coa_id => l_adr_transaction_coa_id
4449: , p_accounting_coa_id => l_adr_accounting_coa_id
4464:
4465: --
4466: -- Update the line information that should be overwritten
4467: --
4468: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4469: p_header_num => 1);
4470: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4471:
4472: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4466: -- Update the line information that should be overwritten
4467: --
4468: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4469: p_header_num => 1);
4470: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4471:
4472: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4473:
4474: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4468: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4469: p_header_num => 1);
4470: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4471:
4472: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4473:
4474: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4475: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4476: END IF;
4471:
4472: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4473:
4474: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4475: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4476: END IF;
4477:
4478: --
4479: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4478: --
4479: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4480: --
4481: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
4482: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
4483: ELSE
4484: ---------------------------------------------------------------------------------------------------
4485: -- 4262811a Switch Sign
4486: ---------------------------------------------------------------------------------------------------
4483: ELSE
4484: ---------------------------------------------------------------------------------------------------
4485: -- 4262811a Switch Sign
4486: ---------------------------------------------------------------------------------------------------
4487: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4489: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4491: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4484: ---------------------------------------------------------------------------------------------------
4485: -- 4262811a Switch Sign
4486: ---------------------------------------------------------------------------------------------------
4487: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4489: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4491: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4492: -- 5132302
4485: -- 4262811a Switch Sign
4486: ---------------------------------------------------------------------------------------------------
4487: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4489: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4491: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4492: -- 5132302
4493: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4486: ---------------------------------------------------------------------------------------------------
4487: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4489: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4491: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4492: -- 5132302
4493: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4494: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4487: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4489: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4491: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4492: -- 5132302
4493: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4494: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4495:
4489: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4491: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4492: -- 5132302
4493: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4494: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4495:
4496: END IF;
4497:
4490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4491: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4492: -- 5132302
4493: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4494: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4495:
4496: END IF;
4497:
4498: -- 4955764
4495:
4496: END IF;
4497:
4498: -- 4955764
4499: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4500: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4501:
4502:
4503: XLA_AE_LINES_PKG.ValidateCurrentLine;
4499: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4500: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4501:
4502:
4503: XLA_AE_LINES_PKG.ValidateCurrentLine;
4504: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4505:
4506: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4507: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4500: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4501:
4502:
4503: XLA_AE_LINES_PKG.ValidateCurrentLine;
4504: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4505:
4506: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4507: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4508: ,p_balance_type_code => l_balance_type_code);
4641: --
4642: -- bulk performance
4643: --
4644: l_balance_type_code VARCHAR2(1);
4645: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
4646: l_log_module VARCHAR2(240);
4647:
4648: --
4649: -- Upgrade strategy
4711: ') = 'ENDORSEMENT'
4712: THEN
4713:
4714: --
4715: XLA_AE_LINES_PKG.SetNewLine;
4716:
4717: p_balance_type_code := l_balance_type_code;
4718: -- set the flag so later we will know whether the gain loss line needs to be created
4719:
4723:
4724: --
4725: -- bulk performance
4726: --
4727: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
4728: p_header_num => 0); -- 4262811
4729: --
4730: -- set accounting line options
4731: --
4728: p_header_num => 0); -- 4262811
4729: --
4730: -- set accounting line options
4731: --
4732: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
4733: p_natural_side_code => 'C'
4734: , p_gain_or_loss_flag => 'N'
4735: , p_gl_transfer_mode_code => 'S'
4736: , p_acct_entry_type_code => 'A'
4742: --
4743: --
4744: -- set accounting line type info
4745: --
4746: xla_ae_lines_pkg.SetAcctLineType
4747: (p_component_type => l_component_type
4748: ,p_event_type_code => l_event_type_code
4749: ,p_line_definition_owner_code => l_line_definition_owner_code
4750: ,p_line_definition_code => l_line_definition_code
4756: ,p_event_class_code => l_event_class_code);
4757: --
4758: -- set accounting class
4759: --
4760: xla_ae_lines_pkg.SetAcctClass(
4761: p_accounting_class_code => 'ENDORSEMENT'
4762: , p_ae_header_id => l_ae_header_id
4763: );
4764:
4764:
4765: --
4766: -- set rounding class
4767: --
4768: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4769: 'RECEIVABLE';
4770:
4771: --
4772: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4768: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4769: 'RECEIVABLE';
4770:
4771: --
4772: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4773: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4774: --
4775: -- bulk performance
4776: --
4769: 'RECEIVABLE';
4770:
4771: --
4772: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4773: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4774: --
4775: -- bulk performance
4776: --
4777: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4773: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4774: --
4775: -- bulk performance
4776: --
4777: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4778:
4779: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4780: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4781:
4775: -- bulk performance
4776: --
4777: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4778:
4779: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4780: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4781:
4782: -- 4955764
4783: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4779: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4780: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4781:
4782: -- 4955764
4783: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4784: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
4785:
4786: -- 4458381 Public Sector Enh
4787:
4813: l_rec_acct_attrs.array_num_value(10) := p_source_31;
4814: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4815: l_rec_acct_attrs.array_char_value(11) := p_source_32;
4816:
4817: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4818: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4819:
4820: ---------------------------------------------------------------------------------------------------------------
4821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4814: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4815: l_rec_acct_attrs.array_char_value(11) := p_source_32;
4816:
4817: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4818: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4819:
4820: ---------------------------------------------------------------------------------------------------------------
4821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4822: ---------------------------------------------------------------------------------------------------------------
4817: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4818: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4819:
4820: ---------------------------------------------------------------------------------------------------------------
4821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4822: ---------------------------------------------------------------------------------------------------------------
4823: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4824:
4825: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4819:
4820: ---------------------------------------------------------------------------------------------------------------
4821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4822: ---------------------------------------------------------------------------------------------------------------
4823: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4824:
4825: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4826: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4827:
4821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4822: ---------------------------------------------------------------------------------------------------------------
4823: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4824:
4825: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4826: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4827:
4828: IF xla_accounting_cache_pkg.GetValueChar
4829: (p_source_code => 'LEDGER_CATEGORY_CODE'
4822: ---------------------------------------------------------------------------------------------------------------
4823: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4824:
4825: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4826: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4827:
4828: IF xla_accounting_cache_pkg.GetValueChar
4829: (p_source_code => 'LEDGER_CATEGORY_CODE'
4830: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
4833: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
4834: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
4835: )
4836: THEN
4837: xla_ae_lines_pkg.BflowUpgEntry
4838: (p_business_method_code => l_bflow_method_code
4839: ,p_business_class_code => l_bflow_class_code
4840: ,p_balance_type => l_balance_type_code);
4841: ELSE
4873: , x_value_type_code => l_adr_value_type_code
4874: , p_side => 'NA'
4875: );
4876:
4877: xla_ae_lines_pkg.set_ccid(
4878: p_code_combination_id => l_ccid
4879: , p_value_type_code => l_adr_value_type_code
4880: , p_transaction_coa_id => l_adr_transaction_coa_id
4881: , p_accounting_coa_id => l_adr_accounting_coa_id
4909: xla_accounting_err_pkg.build_message
4910: (p_appli_s_name => 'XLA'
4911: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
4912: ,p_token_1 => 'LINE_NUMBER'
4913: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
4914: ,p_token_2 => 'LINE_TYPE_NAME'
4915: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
4916: l_component_type
4917: ,l_component_code
4945: --
4946: --
4947: ------------------------------------------------------------------------------------------------
4948: -- 4219869 Business Flow
4949: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4950: -- Prior Entry. Currently, the following code is always generated.
4951: ------------------------------------------------------------------------------------------------
4952: XLA_AE_LINES_PKG.ValidateCurrentLine;
4953:
4948: -- 4219869 Business Flow
4949: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4950: -- Prior Entry. Currently, the following code is always generated.
4951: ------------------------------------------------------------------------------------------------
4952: XLA_AE_LINES_PKG.ValidateCurrentLine;
4953:
4954: ------------------------------------------------------------------------------------
4955: -- 4219869 Business Flow
4956: -- Populated credit and debit amounts -- Need to generate this within IF
4954: ------------------------------------------------------------------------------------
4955: -- 4219869 Business Flow
4956: -- Populated credit and debit amounts -- Need to generate this within IF
4957: ------------------------------------------------------------------------------------
4958: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4959:
4960: ----------------------------------------------------------------------------------
4961: -- 4219869 Business Flow
4962: -- Update journal entry status -- Need to generate this within IF
4986: -- To allow MPA report to determine if it should generate report process
4987: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4988: ------------------------------------------------------------------------------------------
4989:
4990: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4991: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4992: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4993: -- call ADRs
4994: -- Bug 4922099
4987: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4988: ------------------------------------------------------------------------------------------
4989:
4990: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4991: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4992: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4993: -- call ADRs
4994: -- Bug 4922099
4995: --
5011: , x_value_type_code => l_adr_value_type_code
5012: , p_side => 'NA'
5013: );
5014:
5015: xla_ae_lines_pkg.set_ccid(
5016: p_code_combination_id => l_ccid
5017: , p_value_type_code => l_adr_value_type_code
5018: , p_transaction_coa_id => l_adr_transaction_coa_id
5019: , p_accounting_coa_id => l_adr_accounting_coa_id
5034:
5035: --
5036: -- Update the line information that should be overwritten
5037: --
5038: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5039: p_header_num => 1);
5040: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5041:
5042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5036: -- Update the line information that should be overwritten
5037: --
5038: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5039: p_header_num => 1);
5040: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5041:
5042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5043:
5044: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5038: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5039: p_header_num => 1);
5040: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5041:
5042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5043:
5044: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5045: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5046: END IF;
5041:
5042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5043:
5044: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5045: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5046: END IF;
5047:
5048: --
5049: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5048: --
5049: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5050: --
5051: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
5052: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
5053: ELSE
5054: ---------------------------------------------------------------------------------------------------
5055: -- 4262811a Switch Sign
5056: ---------------------------------------------------------------------------------------------------
5053: ELSE
5054: ---------------------------------------------------------------------------------------------------
5055: -- 4262811a Switch Sign
5056: ---------------------------------------------------------------------------------------------------
5057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5054: ---------------------------------------------------------------------------------------------------
5055: -- 4262811a Switch Sign
5056: ---------------------------------------------------------------------------------------------------
5057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5062: -- 5132302
5055: -- 4262811a Switch Sign
5056: ---------------------------------------------------------------------------------------------------
5057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5062: -- 5132302
5063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5056: ---------------------------------------------------------------------------------------------------
5057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5062: -- 5132302
5063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5064: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5062: -- 5132302
5063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5064: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5065:
5059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5062: -- 5132302
5063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5064: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5065:
5066: END IF;
5067:
5060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5062: -- 5132302
5063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5064: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5065:
5066: END IF;
5067:
5068: -- 4955764
5065:
5066: END IF;
5067:
5068: -- 4955764
5069: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5070: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5071:
5072:
5073: XLA_AE_LINES_PKG.ValidateCurrentLine;
5069: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5070: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5071:
5072:
5073: XLA_AE_LINES_PKG.ValidateCurrentLine;
5074: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5075:
5076: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5077: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5070: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5071:
5072:
5073: XLA_AE_LINES_PKG.ValidateCurrentLine;
5074: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5075:
5076: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5077: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5078: ,p_balance_type_code => l_balance_type_code);
5209: --
5210: -- bulk performance
5211: --
5212: l_balance_type_code VARCHAR2(1);
5213: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
5214: l_log_module VARCHAR2(240);
5215:
5216: --
5217: -- Upgrade strategy
5279: ') = 'FINCHRG_NON_REC_TAX'
5280: THEN
5281:
5282: --
5283: XLA_AE_LINES_PKG.SetNewLine;
5284:
5285: p_balance_type_code := l_balance_type_code;
5286: -- set the flag so later we will know whether the gain loss line needs to be created
5287:
5291:
5292: --
5293: -- bulk performance
5294: --
5295: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
5296: p_header_num => 0); -- 4262811
5297: --
5298: -- set accounting line options
5299: --
5296: p_header_num => 0); -- 4262811
5297: --
5298: -- set accounting line options
5299: --
5300: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
5301: p_natural_side_code => 'C'
5302: , p_gain_or_loss_flag => 'N'
5303: , p_gl_transfer_mode_code => 'S'
5304: , p_acct_entry_type_code => 'A'
5310: --
5311: --
5312: -- set accounting line type info
5313: --
5314: xla_ae_lines_pkg.SetAcctLineType
5315: (p_component_type => l_component_type
5316: ,p_event_type_code => l_event_type_code
5317: ,p_line_definition_owner_code => l_line_definition_owner_code
5318: ,p_line_definition_code => l_line_definition_code
5324: ,p_event_class_code => l_event_class_code);
5325: --
5326: -- set accounting class
5327: --
5328: xla_ae_lines_pkg.SetAcctClass(
5329: p_accounting_class_code => 'CHARGES'
5330: , p_ae_header_id => l_ae_header_id
5331: );
5332:
5332:
5333: --
5334: -- set rounding class
5335: --
5336: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5337: 'RECEIVABLE';
5338:
5339: --
5340: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5336: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5337: 'RECEIVABLE';
5338:
5339: --
5340: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5341: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5342: --
5343: -- bulk performance
5344: --
5337: 'RECEIVABLE';
5338:
5339: --
5340: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5341: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5342: --
5343: -- bulk performance
5344: --
5345: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5341: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5342: --
5343: -- bulk performance
5344: --
5345: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5346:
5347: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5348: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5349:
5343: -- bulk performance
5344: --
5345: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5346:
5347: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5348: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5349:
5350: -- 4955764
5351: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5347: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5348: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5349:
5350: -- 4955764
5351: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5352: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
5353:
5354: -- 4458381 Public Sector Enh
5355:
5381: l_rec_acct_attrs.array_num_value(10) := p_source_31;
5382: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5383: l_rec_acct_attrs.array_char_value(11) := p_source_32;
5384:
5385: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5386: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5387:
5388: ---------------------------------------------------------------------------------------------------------------
5389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5382: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5383: l_rec_acct_attrs.array_char_value(11) := p_source_32;
5384:
5385: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5386: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5387:
5388: ---------------------------------------------------------------------------------------------------------------
5389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5390: ---------------------------------------------------------------------------------------------------------------
5385: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5386: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5387:
5388: ---------------------------------------------------------------------------------------------------------------
5389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5390: ---------------------------------------------------------------------------------------------------------------
5391: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5392:
5393: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5387:
5388: ---------------------------------------------------------------------------------------------------------------
5389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5390: ---------------------------------------------------------------------------------------------------------------
5391: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5392:
5393: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5394: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5395:
5389: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5390: ---------------------------------------------------------------------------------------------------------------
5391: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5392:
5393: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5394: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5395:
5396: IF xla_accounting_cache_pkg.GetValueChar
5397: (p_source_code => 'LEDGER_CATEGORY_CODE'
5390: ---------------------------------------------------------------------------------------------------------------
5391: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5392:
5393: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5394: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5395:
5396: IF xla_accounting_cache_pkg.GetValueChar
5397: (p_source_code => 'LEDGER_CATEGORY_CODE'
5398: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
5401: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
5402: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
5403: )
5404: THEN
5405: xla_ae_lines_pkg.BflowUpgEntry
5406: (p_business_method_code => l_bflow_method_code
5407: ,p_business_class_code => l_bflow_class_code
5408: ,p_balance_type => l_balance_type_code);
5409: ELSE
5441: , x_value_type_code => l_adr_value_type_code
5442: , p_side => 'NA'
5443: );
5444:
5445: xla_ae_lines_pkg.set_ccid(
5446: p_code_combination_id => l_ccid
5447: , p_value_type_code => l_adr_value_type_code
5448: , p_transaction_coa_id => l_adr_transaction_coa_id
5449: , p_accounting_coa_id => l_adr_accounting_coa_id
5477: xla_accounting_err_pkg.build_message
5478: (p_appli_s_name => 'XLA'
5479: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
5480: ,p_token_1 => 'LINE_NUMBER'
5481: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
5482: ,p_token_2 => 'LINE_TYPE_NAME'
5483: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
5484: l_component_type
5485: ,l_component_code
5513: --
5514: --
5515: ------------------------------------------------------------------------------------------------
5516: -- 4219869 Business Flow
5517: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5518: -- Prior Entry. Currently, the following code is always generated.
5519: ------------------------------------------------------------------------------------------------
5520: XLA_AE_LINES_PKG.ValidateCurrentLine;
5521:
5516: -- 4219869 Business Flow
5517: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5518: -- Prior Entry. Currently, the following code is always generated.
5519: ------------------------------------------------------------------------------------------------
5520: XLA_AE_LINES_PKG.ValidateCurrentLine;
5521:
5522: ------------------------------------------------------------------------------------
5523: -- 4219869 Business Flow
5524: -- Populated credit and debit amounts -- Need to generate this within IF
5522: ------------------------------------------------------------------------------------
5523: -- 4219869 Business Flow
5524: -- Populated credit and debit amounts -- Need to generate this within IF
5525: ------------------------------------------------------------------------------------
5526: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5527:
5528: ----------------------------------------------------------------------------------
5529: -- 4219869 Business Flow
5530: -- Update journal entry status -- Need to generate this within IF
5554: -- To allow MPA report to determine if it should generate report process
5555: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5556: ------------------------------------------------------------------------------------------
5557:
5558: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5559: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5560: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5561: -- call ADRs
5562: -- Bug 4922099
5555: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5556: ------------------------------------------------------------------------------------------
5557:
5558: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5559: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5560: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5561: -- call ADRs
5562: -- Bug 4922099
5563: --
5579: , x_value_type_code => l_adr_value_type_code
5580: , p_side => 'NA'
5581: );
5582:
5583: xla_ae_lines_pkg.set_ccid(
5584: p_code_combination_id => l_ccid
5585: , p_value_type_code => l_adr_value_type_code
5586: , p_transaction_coa_id => l_adr_transaction_coa_id
5587: , p_accounting_coa_id => l_adr_accounting_coa_id
5602:
5603: --
5604: -- Update the line information that should be overwritten
5605: --
5606: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5607: p_header_num => 1);
5608: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5609:
5610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5604: -- Update the line information that should be overwritten
5605: --
5606: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5607: p_header_num => 1);
5608: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5609:
5610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5611:
5612: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5606: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5607: p_header_num => 1);
5608: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5609:
5610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5611:
5612: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5613: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5614: END IF;
5609:
5610: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5611:
5612: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5613: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5614: END IF;
5615:
5616: --
5617: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5616: --
5617: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5618: --
5619: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
5620: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
5621: ELSE
5622: ---------------------------------------------------------------------------------------------------
5623: -- 4262811a Switch Sign
5624: ---------------------------------------------------------------------------------------------------
5621: ELSE
5622: ---------------------------------------------------------------------------------------------------
5623: -- 4262811a Switch Sign
5624: ---------------------------------------------------------------------------------------------------
5625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5622: ---------------------------------------------------------------------------------------------------
5623: -- 4262811a Switch Sign
5624: ---------------------------------------------------------------------------------------------------
5625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5630: -- 5132302
5623: -- 4262811a Switch Sign
5624: ---------------------------------------------------------------------------------------------------
5625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5630: -- 5132302
5631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5624: ---------------------------------------------------------------------------------------------------
5625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5630: -- 5132302
5631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5632: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5625: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5626: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5630: -- 5132302
5631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5632: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5633:
5627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5630: -- 5132302
5631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5632: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5633:
5634: END IF;
5635:
5628: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5629: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5630: -- 5132302
5631: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5632: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5633:
5634: END IF;
5635:
5636: -- 4955764
5633:
5634: END IF;
5635:
5636: -- 4955764
5637: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5638: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5639:
5640:
5641: XLA_AE_LINES_PKG.ValidateCurrentLine;
5637: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5638: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5639:
5640:
5641: XLA_AE_LINES_PKG.ValidateCurrentLine;
5642: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5643:
5644: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5645: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5638: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5639:
5640:
5641: XLA_AE_LINES_PKG.ValidateCurrentLine;
5642: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5643:
5644: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5645: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5646: ,p_balance_type_code => l_balance_type_code);
5777: --
5778: -- bulk performance
5779: --
5780: l_balance_type_code VARCHAR2(1);
5781: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
5782: l_log_module VARCHAR2(240);
5783:
5784: --
5785: -- Upgrade strategy
5845: ') = 'REC'
5846: THEN
5847:
5848: --
5849: XLA_AE_LINES_PKG.SetNewLine;
5850:
5851: p_balance_type_code := l_balance_type_code;
5852: -- set the flag so later we will know whether the gain loss line needs to be created
5853:
5857:
5858: --
5859: -- bulk performance
5860: --
5861: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
5862: p_header_num => 0); -- 4262811
5863: --
5864: -- set accounting line options
5865: --
5862: p_header_num => 0); -- 4262811
5863: --
5864: -- set accounting line options
5865: --
5866: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
5867: p_natural_side_code => 'C'
5868: , p_gain_or_loss_flag => 'N'
5869: , p_gl_transfer_mode_code => 'S'
5870: , p_acct_entry_type_code => 'A'
5876: --
5877: --
5878: -- set accounting line type info
5879: --
5880: xla_ae_lines_pkg.SetAcctLineType
5881: (p_component_type => l_component_type
5882: ,p_event_type_code => l_event_type_code
5883: ,p_line_definition_owner_code => l_line_definition_owner_code
5884: ,p_line_definition_code => l_line_definition_code
5890: ,p_event_class_code => l_event_class_code);
5891: --
5892: -- set accounting class
5893: --
5894: xla_ae_lines_pkg.SetAcctClass(
5895: p_accounting_class_code => 'RECEIVABLE'
5896: , p_ae_header_id => l_ae_header_id
5897: );
5898:
5898:
5899: --
5900: -- set rounding class
5901: --
5902: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5903: 'RECEIVABLE';
5904:
5905: --
5906: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5902: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5903: 'RECEIVABLE';
5904:
5905: --
5906: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5907: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5908: --
5909: -- bulk performance
5910: --
5903: 'RECEIVABLE';
5904:
5905: --
5906: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5907: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5908: --
5909: -- bulk performance
5910: --
5911: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5907: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5908: --
5909: -- bulk performance
5910: --
5911: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5912:
5913: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5914: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5915:
5909: -- bulk performance
5910: --
5911: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5912:
5913: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5914: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5915:
5916: -- 4955764
5917: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5913: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5914: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5915:
5916: -- 4955764
5917: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5918: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
5919:
5920: -- 4458381 Public Sector Enh
5921:
5947: l_rec_acct_attrs.array_num_value(10) := p_source_31;
5948: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5949: l_rec_acct_attrs.array_char_value(11) := p_source_32;
5950:
5951: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5952: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5953:
5954: ---------------------------------------------------------------------------------------------------------------
5955: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5948: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5949: l_rec_acct_attrs.array_char_value(11) := p_source_32;
5950:
5951: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5952: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5953:
5954: ---------------------------------------------------------------------------------------------------------------
5955: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5956: ---------------------------------------------------------------------------------------------------------------
5951: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5952: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5953:
5954: ---------------------------------------------------------------------------------------------------------------
5955: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5956: ---------------------------------------------------------------------------------------------------------------
5957: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5958:
5959: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5953:
5954: ---------------------------------------------------------------------------------------------------------------
5955: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5956: ---------------------------------------------------------------------------------------------------------------
5957: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5958:
5959: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5960: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5961:
5955: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5956: ---------------------------------------------------------------------------------------------------------------
5957: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5958:
5959: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5960: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5961:
5962: IF xla_accounting_cache_pkg.GetValueChar
5963: (p_source_code => 'LEDGER_CATEGORY_CODE'
5956: ---------------------------------------------------------------------------------------------------------------
5957: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5958:
5959: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5960: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5961:
5962: IF xla_accounting_cache_pkg.GetValueChar
5963: (p_source_code => 'LEDGER_CATEGORY_CODE'
5964: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
5967: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
5968: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
5969: )
5970: THEN
5971: xla_ae_lines_pkg.BflowUpgEntry
5972: (p_business_method_code => l_bflow_method_code
5973: ,p_business_class_code => l_bflow_class_code
5974: ,p_balance_type => l_balance_type_code);
5975: ELSE
6007: , x_value_type_code => l_adr_value_type_code
6008: , p_side => 'NA'
6009: );
6010:
6011: xla_ae_lines_pkg.set_ccid(
6012: p_code_combination_id => l_ccid
6013: , p_value_type_code => l_adr_value_type_code
6014: , p_transaction_coa_id => l_adr_transaction_coa_id
6015: , p_accounting_coa_id => l_adr_accounting_coa_id
6043: xla_accounting_err_pkg.build_message
6044: (p_appli_s_name => 'XLA'
6045: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
6046: ,p_token_1 => 'LINE_NUMBER'
6047: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
6048: ,p_token_2 => 'LINE_TYPE_NAME'
6049: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
6050: l_component_type
6051: ,l_component_code
6079: --
6080: --
6081: ------------------------------------------------------------------------------------------------
6082: -- 4219869 Business Flow
6083: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6084: -- Prior Entry. Currently, the following code is always generated.
6085: ------------------------------------------------------------------------------------------------
6086: XLA_AE_LINES_PKG.ValidateCurrentLine;
6087:
6082: -- 4219869 Business Flow
6083: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6084: -- Prior Entry. Currently, the following code is always generated.
6085: ------------------------------------------------------------------------------------------------
6086: XLA_AE_LINES_PKG.ValidateCurrentLine;
6087:
6088: ------------------------------------------------------------------------------------
6089: -- 4219869 Business Flow
6090: -- Populated credit and debit amounts -- Need to generate this within IF
6088: ------------------------------------------------------------------------------------
6089: -- 4219869 Business Flow
6090: -- Populated credit and debit amounts -- Need to generate this within IF
6091: ------------------------------------------------------------------------------------
6092: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6093:
6094: ----------------------------------------------------------------------------------
6095: -- 4219869 Business Flow
6096: -- Update journal entry status -- Need to generate this within IF
6120: -- To allow MPA report to determine if it should generate report process
6121: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6122: ------------------------------------------------------------------------------------------
6123:
6124: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6125: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6126: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6127: -- call ADRs
6128: -- Bug 4922099
6121: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6122: ------------------------------------------------------------------------------------------
6123:
6124: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6125: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6126: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6127: -- call ADRs
6128: -- Bug 4922099
6129: --
6145: , x_value_type_code => l_adr_value_type_code
6146: , p_side => 'NA'
6147: );
6148:
6149: xla_ae_lines_pkg.set_ccid(
6150: p_code_combination_id => l_ccid
6151: , p_value_type_code => l_adr_value_type_code
6152: , p_transaction_coa_id => l_adr_transaction_coa_id
6153: , p_accounting_coa_id => l_adr_accounting_coa_id
6168:
6169: --
6170: -- Update the line information that should be overwritten
6171: --
6172: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6173: p_header_num => 1);
6174: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6175:
6176: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6170: -- Update the line information that should be overwritten
6171: --
6172: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6173: p_header_num => 1);
6174: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6175:
6176: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6177:
6178: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6172: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6173: p_header_num => 1);
6174: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6175:
6176: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6177:
6178: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6179: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6180: END IF;
6175:
6176: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6177:
6178: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6179: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6180: END IF;
6181:
6182: --
6183: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6182: --
6183: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6184: --
6185: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
6186: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
6187: ELSE
6188: ---------------------------------------------------------------------------------------------------
6189: -- 4262811a Switch Sign
6190: ---------------------------------------------------------------------------------------------------
6187: ELSE
6188: ---------------------------------------------------------------------------------------------------
6189: -- 4262811a Switch Sign
6190: ---------------------------------------------------------------------------------------------------
6191: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6192: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6194: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6188: ---------------------------------------------------------------------------------------------------
6189: -- 4262811a Switch Sign
6190: ---------------------------------------------------------------------------------------------------
6191: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6192: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6194: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6196: -- 5132302
6189: -- 4262811a Switch Sign
6190: ---------------------------------------------------------------------------------------------------
6191: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6192: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6194: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6196: -- 5132302
6197: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6190: ---------------------------------------------------------------------------------------------------
6191: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6192: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6194: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6196: -- 5132302
6197: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6198: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6191: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6192: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6194: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6196: -- 5132302
6197: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6198: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6199:
6193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6194: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6196: -- 5132302
6197: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6198: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6199:
6200: END IF;
6201:
6194: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6196: -- 5132302
6197: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6198: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6199:
6200: END IF;
6201:
6202: -- 4955764
6199:
6200: END IF;
6201:
6202: -- 4955764
6203: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6204: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6205:
6206:
6207: XLA_AE_LINES_PKG.ValidateCurrentLine;
6203: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6204: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6205:
6206:
6207: XLA_AE_LINES_PKG.ValidateCurrentLine;
6208: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6209:
6210: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6211: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6204: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6205:
6206:
6207: XLA_AE_LINES_PKG.ValidateCurrentLine;
6208: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6209:
6210: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6211: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6212: ,p_balance_type_code => l_balance_type_code);
6343: --
6344: -- bulk performance
6345: --
6346: l_balance_type_code VARCHAR2(1);
6347: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
6348: l_log_module VARCHAR2(240);
6349:
6350: --
6351: -- Upgrade strategy
6411: ') = 'DEFERRED_TAX'
6412: THEN
6413:
6414: --
6415: XLA_AE_LINES_PKG.SetNewLine;
6416:
6417: p_balance_type_code := l_balance_type_code;
6418: -- set the flag so later we will know whether the gain loss line needs to be created
6419:
6423:
6424: --
6425: -- bulk performance
6426: --
6427: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
6428: p_header_num => 0); -- 4262811
6429: --
6430: -- set accounting line options
6431: --
6428: p_header_num => 0); -- 4262811
6429: --
6430: -- set accounting line options
6431: --
6432: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
6433: p_natural_side_code => 'C'
6434: , p_gain_or_loss_flag => 'N'
6435: , p_gl_transfer_mode_code => 'S'
6436: , p_acct_entry_type_code => 'A'
6442: --
6443: --
6444: -- set accounting line type info
6445: --
6446: xla_ae_lines_pkg.SetAcctLineType
6447: (p_component_type => l_component_type
6448: ,p_event_type_code => l_event_type_code
6449: ,p_line_definition_owner_code => l_line_definition_owner_code
6450: ,p_line_definition_code => l_line_definition_code
6456: ,p_event_class_code => l_event_class_code);
6457: --
6458: -- set accounting class
6459: --
6460: xla_ae_lines_pkg.SetAcctClass(
6461: p_accounting_class_code => 'DEFERRED_TAX'
6462: , p_ae_header_id => l_ae_header_id
6463: );
6464:
6464:
6465: --
6466: -- set rounding class
6467: --
6468: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6469: 'RECEIVABLE';
6470:
6471: --
6472: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6468: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6469: 'RECEIVABLE';
6470:
6471: --
6472: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6473: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6474: --
6475: -- bulk performance
6476: --
6469: 'RECEIVABLE';
6470:
6471: --
6472: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6473: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6474: --
6475: -- bulk performance
6476: --
6477: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6473: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6474: --
6475: -- bulk performance
6476: --
6477: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6478:
6479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6480: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6481:
6475: -- bulk performance
6476: --
6477: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6478:
6479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6480: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6481:
6482: -- 4955764
6483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6480: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6481:
6482: -- 4955764
6483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
6485:
6486: -- 4458381 Public Sector Enh
6487:
6513: l_rec_acct_attrs.array_num_value(10) := p_source_31;
6514: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
6515: l_rec_acct_attrs.array_char_value(11) := p_source_32;
6516:
6517: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6518: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6519:
6520: ---------------------------------------------------------------------------------------------------------------
6521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6514: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
6515: l_rec_acct_attrs.array_char_value(11) := p_source_32;
6516:
6517: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6518: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6519:
6520: ---------------------------------------------------------------------------------------------------------------
6521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6522: ---------------------------------------------------------------------------------------------------------------
6517: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6518: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6519:
6520: ---------------------------------------------------------------------------------------------------------------
6521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6522: ---------------------------------------------------------------------------------------------------------------
6523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6524:
6525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6519:
6520: ---------------------------------------------------------------------------------------------------------------
6521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6522: ---------------------------------------------------------------------------------------------------------------
6523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6524:
6525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6526: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6527:
6521: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6522: ---------------------------------------------------------------------------------------------------------------
6523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6524:
6525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6526: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6527:
6528: IF xla_accounting_cache_pkg.GetValueChar
6529: (p_source_code => 'LEDGER_CATEGORY_CODE'
6522: ---------------------------------------------------------------------------------------------------------------
6523: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6524:
6525: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6526: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6527:
6528: IF xla_accounting_cache_pkg.GetValueChar
6529: (p_source_code => 'LEDGER_CATEGORY_CODE'
6530: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
6533: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
6534: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
6535: )
6536: THEN
6537: xla_ae_lines_pkg.BflowUpgEntry
6538: (p_business_method_code => l_bflow_method_code
6539: ,p_business_class_code => l_bflow_class_code
6540: ,p_balance_type => l_balance_type_code);
6541: ELSE
6573: , x_value_type_code => l_adr_value_type_code
6574: , p_side => 'NA'
6575: );
6576:
6577: xla_ae_lines_pkg.set_ccid(
6578: p_code_combination_id => l_ccid
6579: , p_value_type_code => l_adr_value_type_code
6580: , p_transaction_coa_id => l_adr_transaction_coa_id
6581: , p_accounting_coa_id => l_adr_accounting_coa_id
6609: xla_accounting_err_pkg.build_message
6610: (p_appli_s_name => 'XLA'
6611: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
6612: ,p_token_1 => 'LINE_NUMBER'
6613: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
6614: ,p_token_2 => 'LINE_TYPE_NAME'
6615: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
6616: l_component_type
6617: ,l_component_code
6645: --
6646: --
6647: ------------------------------------------------------------------------------------------------
6648: -- 4219869 Business Flow
6649: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6650: -- Prior Entry. Currently, the following code is always generated.
6651: ------------------------------------------------------------------------------------------------
6652: XLA_AE_LINES_PKG.ValidateCurrentLine;
6653:
6648: -- 4219869 Business Flow
6649: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6650: -- Prior Entry. Currently, the following code is always generated.
6651: ------------------------------------------------------------------------------------------------
6652: XLA_AE_LINES_PKG.ValidateCurrentLine;
6653:
6654: ------------------------------------------------------------------------------------
6655: -- 4219869 Business Flow
6656: -- Populated credit and debit amounts -- Need to generate this within IF
6654: ------------------------------------------------------------------------------------
6655: -- 4219869 Business Flow
6656: -- Populated credit and debit amounts -- Need to generate this within IF
6657: ------------------------------------------------------------------------------------
6658: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6659:
6660: ----------------------------------------------------------------------------------
6661: -- 4219869 Business Flow
6662: -- Update journal entry status -- Need to generate this within IF
6686: -- To allow MPA report to determine if it should generate report process
6687: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6688: ------------------------------------------------------------------------------------------
6689:
6690: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6691: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6692: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6693: -- call ADRs
6694: -- Bug 4922099
6687: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6688: ------------------------------------------------------------------------------------------
6689:
6690: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6691: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6692: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6693: -- call ADRs
6694: -- Bug 4922099
6695: --
6711: , x_value_type_code => l_adr_value_type_code
6712: , p_side => 'NA'
6713: );
6714:
6715: xla_ae_lines_pkg.set_ccid(
6716: p_code_combination_id => l_ccid
6717: , p_value_type_code => l_adr_value_type_code
6718: , p_transaction_coa_id => l_adr_transaction_coa_id
6719: , p_accounting_coa_id => l_adr_accounting_coa_id
6734:
6735: --
6736: -- Update the line information that should be overwritten
6737: --
6738: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6739: p_header_num => 1);
6740: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6741:
6742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6736: -- Update the line information that should be overwritten
6737: --
6738: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6739: p_header_num => 1);
6740: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6741:
6742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6743:
6744: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6738: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6739: p_header_num => 1);
6740: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6741:
6742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6743:
6744: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6745: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6746: END IF;
6741:
6742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6743:
6744: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6745: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6746: END IF;
6747:
6748: --
6749: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6748: --
6749: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6750: --
6751: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
6752: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
6753: ELSE
6754: ---------------------------------------------------------------------------------------------------
6755: -- 4262811a Switch Sign
6756: ---------------------------------------------------------------------------------------------------
6753: ELSE
6754: ---------------------------------------------------------------------------------------------------
6755: -- 4262811a Switch Sign
6756: ---------------------------------------------------------------------------------------------------
6757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6754: ---------------------------------------------------------------------------------------------------
6755: -- 4262811a Switch Sign
6756: ---------------------------------------------------------------------------------------------------
6757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6762: -- 5132302
6755: -- 4262811a Switch Sign
6756: ---------------------------------------------------------------------------------------------------
6757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6762: -- 5132302
6763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6756: ---------------------------------------------------------------------------------------------------
6757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6762: -- 5132302
6763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6757: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6758: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6762: -- 5132302
6763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6765:
6759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6762: -- 5132302
6763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6765:
6766: END IF;
6767:
6760: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6762: -- 5132302
6763: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6765:
6766: END IF;
6767:
6768: -- 4955764
6765:
6766: END IF;
6767:
6768: -- 4955764
6769: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6770: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6771:
6772:
6773: XLA_AE_LINES_PKG.ValidateCurrentLine;
6769: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6770: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6771:
6772:
6773: XLA_AE_LINES_PKG.ValidateCurrentLine;
6774: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6775:
6776: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6777: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6770: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6771:
6772:
6773: XLA_AE_LINES_PKG.ValidateCurrentLine;
6774: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6775:
6776: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6777: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6778: ,p_balance_type_code => l_balance_type_code);
6909: --
6910: -- bulk performance
6911: --
6912: l_balance_type_code VARCHAR2(1);
6913: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
6914: l_log_module VARCHAR2(240);
6915:
6916: --
6917: -- Upgrade strategy
6977: ') = 'FINCHRG_NON_REC_TAX'
6978: THEN
6979:
6980: --
6981: XLA_AE_LINES_PKG.SetNewLine;
6982:
6983: p_balance_type_code := l_balance_type_code;
6984: -- set the flag so later we will know whether the gain loss line needs to be created
6985:
6989:
6990: --
6991: -- bulk performance
6992: --
6993: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
6994: p_header_num => 0); -- 4262811
6995: --
6996: -- set accounting line options
6997: --
6994: p_header_num => 0); -- 4262811
6995: --
6996: -- set accounting line options
6997: --
6998: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
6999: p_natural_side_code => 'C'
7000: , p_gain_or_loss_flag => 'N'
7001: , p_gl_transfer_mode_code => 'S'
7002: , p_acct_entry_type_code => 'A'
7008: --
7009: --
7010: -- set accounting line type info
7011: --
7012: xla_ae_lines_pkg.SetAcctLineType
7013: (p_component_type => l_component_type
7014: ,p_event_type_code => l_event_type_code
7015: ,p_line_definition_owner_code => l_line_definition_owner_code
7016: ,p_line_definition_code => l_line_definition_code
7022: ,p_event_class_code => l_event_class_code);
7023: --
7024: -- set accounting class
7025: --
7026: xla_ae_lines_pkg.SetAcctClass(
7027: p_accounting_class_code => 'FINCHRG_NON_REC_TAX'
7028: , p_ae_header_id => l_ae_header_id
7029: );
7030:
7030:
7031: --
7032: -- set rounding class
7033: --
7034: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7035: 'RECEIVABLE';
7036:
7037: --
7038: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7034: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7035: 'RECEIVABLE';
7036:
7037: --
7038: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7039: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7040: --
7041: -- bulk performance
7042: --
7035: 'RECEIVABLE';
7036:
7037: --
7038: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7039: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7040: --
7041: -- bulk performance
7042: --
7043: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7039: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7040: --
7041: -- bulk performance
7042: --
7043: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7044:
7045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7046: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7047:
7041: -- bulk performance
7042: --
7043: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7044:
7045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7046: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7047:
7048: -- 4955764
7049: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7046: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7047:
7048: -- 4955764
7049: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7050: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
7051:
7052: -- 4458381 Public Sector Enh
7053:
7079: l_rec_acct_attrs.array_num_value(10) := p_source_31;
7080: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
7081: l_rec_acct_attrs.array_char_value(11) := p_source_32;
7082:
7083: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7084: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7085:
7086: ---------------------------------------------------------------------------------------------------------------
7087: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7080: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
7081: l_rec_acct_attrs.array_char_value(11) := p_source_32;
7082:
7083: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7084: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7085:
7086: ---------------------------------------------------------------------------------------------------------------
7087: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7088: ---------------------------------------------------------------------------------------------------------------
7083: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7084: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7085:
7086: ---------------------------------------------------------------------------------------------------------------
7087: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7088: ---------------------------------------------------------------------------------------------------------------
7089: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7090:
7091: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7085:
7086: ---------------------------------------------------------------------------------------------------------------
7087: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7088: ---------------------------------------------------------------------------------------------------------------
7089: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7090:
7091: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7092: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7093:
7087: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7088: ---------------------------------------------------------------------------------------------------------------
7089: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7090:
7091: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7092: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7093:
7094: IF xla_accounting_cache_pkg.GetValueChar
7095: (p_source_code => 'LEDGER_CATEGORY_CODE'
7088: ---------------------------------------------------------------------------------------------------------------
7089: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7090:
7091: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7092: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7093:
7094: IF xla_accounting_cache_pkg.GetValueChar
7095: (p_source_code => 'LEDGER_CATEGORY_CODE'
7096: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
7099: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
7100: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
7101: )
7102: THEN
7103: xla_ae_lines_pkg.BflowUpgEntry
7104: (p_business_method_code => l_bflow_method_code
7105: ,p_business_class_code => l_bflow_class_code
7106: ,p_balance_type => l_balance_type_code);
7107: ELSE
7139: , x_value_type_code => l_adr_value_type_code
7140: , p_side => 'NA'
7141: );
7142:
7143: xla_ae_lines_pkg.set_ccid(
7144: p_code_combination_id => l_ccid
7145: , p_value_type_code => l_adr_value_type_code
7146: , p_transaction_coa_id => l_adr_transaction_coa_id
7147: , p_accounting_coa_id => l_adr_accounting_coa_id
7175: xla_accounting_err_pkg.build_message
7176: (p_appli_s_name => 'XLA'
7177: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
7178: ,p_token_1 => 'LINE_NUMBER'
7179: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
7180: ,p_token_2 => 'LINE_TYPE_NAME'
7181: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
7182: l_component_type
7183: ,l_component_code
7211: --
7212: --
7213: ------------------------------------------------------------------------------------------------
7214: -- 4219869 Business Flow
7215: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7216: -- Prior Entry. Currently, the following code is always generated.
7217: ------------------------------------------------------------------------------------------------
7218: XLA_AE_LINES_PKG.ValidateCurrentLine;
7219:
7214: -- 4219869 Business Flow
7215: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7216: -- Prior Entry. Currently, the following code is always generated.
7217: ------------------------------------------------------------------------------------------------
7218: XLA_AE_LINES_PKG.ValidateCurrentLine;
7219:
7220: ------------------------------------------------------------------------------------
7221: -- 4219869 Business Flow
7222: -- Populated credit and debit amounts -- Need to generate this within IF
7220: ------------------------------------------------------------------------------------
7221: -- 4219869 Business Flow
7222: -- Populated credit and debit amounts -- Need to generate this within IF
7223: ------------------------------------------------------------------------------------
7224: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7225:
7226: ----------------------------------------------------------------------------------
7227: -- 4219869 Business Flow
7228: -- Update journal entry status -- Need to generate this within IF
7252: -- To allow MPA report to determine if it should generate report process
7253: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7254: ------------------------------------------------------------------------------------------
7255:
7256: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7257: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7258: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7259: -- call ADRs
7260: -- Bug 4922099
7253: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7254: ------------------------------------------------------------------------------------------
7255:
7256: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7257: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7258: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7259: -- call ADRs
7260: -- Bug 4922099
7261: --
7277: , x_value_type_code => l_adr_value_type_code
7278: , p_side => 'NA'
7279: );
7280:
7281: xla_ae_lines_pkg.set_ccid(
7282: p_code_combination_id => l_ccid
7283: , p_value_type_code => l_adr_value_type_code
7284: , p_transaction_coa_id => l_adr_transaction_coa_id
7285: , p_accounting_coa_id => l_adr_accounting_coa_id
7300:
7301: --
7302: -- Update the line information that should be overwritten
7303: --
7304: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7305: p_header_num => 1);
7306: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7307:
7308: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7302: -- Update the line information that should be overwritten
7303: --
7304: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7305: p_header_num => 1);
7306: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7307:
7308: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7309:
7310: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7304: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7305: p_header_num => 1);
7306: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7307:
7308: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7309:
7310: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7311: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7312: END IF;
7307:
7308: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7309:
7310: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7311: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7312: END IF;
7313:
7314: --
7315: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7314: --
7315: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7316: --
7317: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
7318: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
7319: ELSE
7320: ---------------------------------------------------------------------------------------------------
7321: -- 4262811a Switch Sign
7322: ---------------------------------------------------------------------------------------------------
7319: ELSE
7320: ---------------------------------------------------------------------------------------------------
7321: -- 4262811a Switch Sign
7322: ---------------------------------------------------------------------------------------------------
7323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7320: ---------------------------------------------------------------------------------------------------
7321: -- 4262811a Switch Sign
7322: ---------------------------------------------------------------------------------------------------
7323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7328: -- 5132302
7321: -- 4262811a Switch Sign
7322: ---------------------------------------------------------------------------------------------------
7323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7328: -- 5132302
7329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7322: ---------------------------------------------------------------------------------------------------
7323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7328: -- 5132302
7329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7330: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7323: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7324: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7328: -- 5132302
7329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7330: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7331:
7325: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7328: -- 5132302
7329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7330: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7331:
7332: END IF;
7333:
7326: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7327: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7328: -- 5132302
7329: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7330: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7331:
7332: END IF;
7333:
7334: -- 4955764
7331:
7332: END IF;
7333:
7334: -- 4955764
7335: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7336: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7337:
7338:
7339: XLA_AE_LINES_PKG.ValidateCurrentLine;
7335: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7336: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7337:
7338:
7339: XLA_AE_LINES_PKG.ValidateCurrentLine;
7340: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7341:
7342: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7343: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7336: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7337:
7338:
7339: XLA_AE_LINES_PKG.ValidateCurrentLine;
7340: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7341:
7342: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7343: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7344: ,p_balance_type_code => l_balance_type_code);
7475: --
7476: -- bulk performance
7477: --
7478: l_balance_type_code VARCHAR2(1);
7479: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
7480: l_log_module VARCHAR2(240);
7481:
7482: --
7483: -- Upgrade strategy
7543: ') = 'ADJ_NON_REC_TAX'
7544: THEN
7545:
7546: --
7547: XLA_AE_LINES_PKG.SetNewLine;
7548:
7549: p_balance_type_code := l_balance_type_code;
7550: -- set the flag so later we will know whether the gain loss line needs to be created
7551:
7555:
7556: --
7557: -- bulk performance
7558: --
7559: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
7560: p_header_num => 0); -- 4262811
7561: --
7562: -- set accounting line options
7563: --
7560: p_header_num => 0); -- 4262811
7561: --
7562: -- set accounting line options
7563: --
7564: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
7565: p_natural_side_code => 'C'
7566: , p_gain_or_loss_flag => 'N'
7567: , p_gl_transfer_mode_code => 'S'
7568: , p_acct_entry_type_code => 'A'
7574: --
7575: --
7576: -- set accounting line type info
7577: --
7578: xla_ae_lines_pkg.SetAcctLineType
7579: (p_component_type => l_component_type
7580: ,p_event_type_code => l_event_type_code
7581: ,p_line_definition_owner_code => l_line_definition_owner_code
7582: ,p_line_definition_code => l_line_definition_code
7588: ,p_event_class_code => l_event_class_code);
7589: --
7590: -- set accounting class
7591: --
7592: xla_ae_lines_pkg.SetAcctClass(
7593: p_accounting_class_code => 'ADJ_NON_REC_TAX'
7594: , p_ae_header_id => l_ae_header_id
7595: );
7596:
7596:
7597: --
7598: -- set rounding class
7599: --
7600: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7601: 'RECEIVABLE';
7602:
7603: --
7604: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7600: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7601: 'RECEIVABLE';
7602:
7603: --
7604: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7605: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7606: --
7607: -- bulk performance
7608: --
7601: 'RECEIVABLE';
7602:
7603: --
7604: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7605: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7606: --
7607: -- bulk performance
7608: --
7609: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7605: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7606: --
7607: -- bulk performance
7608: --
7609: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7610:
7611: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7612: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7613:
7607: -- bulk performance
7608: --
7609: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7610:
7611: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7612: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7613:
7614: -- 4955764
7615: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7611: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7612: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7613:
7614: -- 4955764
7615: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7616: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
7617:
7618: -- 4458381 Public Sector Enh
7619:
7645: l_rec_acct_attrs.array_num_value(10) := p_source_31;
7646: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
7647: l_rec_acct_attrs.array_char_value(11) := p_source_32;
7648:
7649: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7650: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7651:
7652: ---------------------------------------------------------------------------------------------------------------
7653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7646: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
7647: l_rec_acct_attrs.array_char_value(11) := p_source_32;
7648:
7649: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7650: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7651:
7652: ---------------------------------------------------------------------------------------------------------------
7653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7654: ---------------------------------------------------------------------------------------------------------------
7649: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7650: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7651:
7652: ---------------------------------------------------------------------------------------------------------------
7653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7654: ---------------------------------------------------------------------------------------------------------------
7655: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7656:
7657: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7651:
7652: ---------------------------------------------------------------------------------------------------------------
7653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7654: ---------------------------------------------------------------------------------------------------------------
7655: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7656:
7657: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7658: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7659:
7653: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7654: ---------------------------------------------------------------------------------------------------------------
7655: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7656:
7657: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7658: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7659:
7660: IF xla_accounting_cache_pkg.GetValueChar
7661: (p_source_code => 'LEDGER_CATEGORY_CODE'
7654: ---------------------------------------------------------------------------------------------------------------
7655: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7656:
7657: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7658: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7659:
7660: IF xla_accounting_cache_pkg.GetValueChar
7661: (p_source_code => 'LEDGER_CATEGORY_CODE'
7662: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
7665: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
7666: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
7667: )
7668: THEN
7669: xla_ae_lines_pkg.BflowUpgEntry
7670: (p_business_method_code => l_bflow_method_code
7671: ,p_business_class_code => l_bflow_class_code
7672: ,p_balance_type => l_balance_type_code);
7673: ELSE
7705: , x_value_type_code => l_adr_value_type_code
7706: , p_side => 'NA'
7707: );
7708:
7709: xla_ae_lines_pkg.set_ccid(
7710: p_code_combination_id => l_ccid
7711: , p_value_type_code => l_adr_value_type_code
7712: , p_transaction_coa_id => l_adr_transaction_coa_id
7713: , p_accounting_coa_id => l_adr_accounting_coa_id
7741: xla_accounting_err_pkg.build_message
7742: (p_appli_s_name => 'XLA'
7743: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
7744: ,p_token_1 => 'LINE_NUMBER'
7745: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
7746: ,p_token_2 => 'LINE_TYPE_NAME'
7747: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
7748: l_component_type
7749: ,l_component_code
7777: --
7778: --
7779: ------------------------------------------------------------------------------------------------
7780: -- 4219869 Business Flow
7781: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7782: -- Prior Entry. Currently, the following code is always generated.
7783: ------------------------------------------------------------------------------------------------
7784: XLA_AE_LINES_PKG.ValidateCurrentLine;
7785:
7780: -- 4219869 Business Flow
7781: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7782: -- Prior Entry. Currently, the following code is always generated.
7783: ------------------------------------------------------------------------------------------------
7784: XLA_AE_LINES_PKG.ValidateCurrentLine;
7785:
7786: ------------------------------------------------------------------------------------
7787: -- 4219869 Business Flow
7788: -- Populated credit and debit amounts -- Need to generate this within IF
7786: ------------------------------------------------------------------------------------
7787: -- 4219869 Business Flow
7788: -- Populated credit and debit amounts -- Need to generate this within IF
7789: ------------------------------------------------------------------------------------
7790: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7791:
7792: ----------------------------------------------------------------------------------
7793: -- 4219869 Business Flow
7794: -- Update journal entry status -- Need to generate this within IF
7818: -- To allow MPA report to determine if it should generate report process
7819: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7820: ------------------------------------------------------------------------------------------
7821:
7822: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7823: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7824: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7825: -- call ADRs
7826: -- Bug 4922099
7819: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7820: ------------------------------------------------------------------------------------------
7821:
7822: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7823: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7824: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7825: -- call ADRs
7826: -- Bug 4922099
7827: --
7843: , x_value_type_code => l_adr_value_type_code
7844: , p_side => 'NA'
7845: );
7846:
7847: xla_ae_lines_pkg.set_ccid(
7848: p_code_combination_id => l_ccid
7849: , p_value_type_code => l_adr_value_type_code
7850: , p_transaction_coa_id => l_adr_transaction_coa_id
7851: , p_accounting_coa_id => l_adr_accounting_coa_id
7866:
7867: --
7868: -- Update the line information that should be overwritten
7869: --
7870: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7871: p_header_num => 1);
7872: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7873:
7874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7868: -- Update the line information that should be overwritten
7869: --
7870: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7871: p_header_num => 1);
7872: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7873:
7874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7875:
7876: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7870: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7871: p_header_num => 1);
7872: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7873:
7874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7875:
7876: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7877: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7878: END IF;
7873:
7874: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7875:
7876: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7877: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7878: END IF;
7879:
7880: --
7881: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7880: --
7881: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7882: --
7883: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
7884: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
7885: ELSE
7886: ---------------------------------------------------------------------------------------------------
7887: -- 4262811a Switch Sign
7888: ---------------------------------------------------------------------------------------------------
7885: ELSE
7886: ---------------------------------------------------------------------------------------------------
7887: -- 4262811a Switch Sign
7888: ---------------------------------------------------------------------------------------------------
7889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7886: ---------------------------------------------------------------------------------------------------
7887: -- 4262811a Switch Sign
7888: ---------------------------------------------------------------------------------------------------
7889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7894: -- 5132302
7887: -- 4262811a Switch Sign
7888: ---------------------------------------------------------------------------------------------------
7889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7894: -- 5132302
7895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7888: ---------------------------------------------------------------------------------------------------
7889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7894: -- 5132302
7895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7889: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7894: -- 5132302
7895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7897:
7891: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7894: -- 5132302
7895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7897:
7898: END IF;
7899:
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7893: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7894: -- 5132302
7895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7896: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7897:
7898: END IF;
7899:
7900: -- 4955764
7897:
7898: END IF;
7899:
7900: -- 4955764
7901: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7903:
7904:
7905: XLA_AE_LINES_PKG.ValidateCurrentLine;
7901: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7903:
7904:
7905: XLA_AE_LINES_PKG.ValidateCurrentLine;
7906: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7907:
7908: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7909: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7903:
7904:
7905: XLA_AE_LINES_PKG.ValidateCurrentLine;
7906: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7907:
7908: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7909: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7910: ,p_balance_type_code => l_balance_type_code);
8041: --
8042: -- bulk performance
8043: --
8044: l_balance_type_code VARCHAR2(1);
8045: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
8046: l_log_module VARCHAR2(240);
8047:
8048: --
8049: -- Upgrade strategy
8109: ') = 'TAX'
8110: THEN
8111:
8112: --
8113: XLA_AE_LINES_PKG.SetNewLine;
8114:
8115: p_balance_type_code := l_balance_type_code;
8116: -- set the flag so later we will know whether the gain loss line needs to be created
8117:
8121:
8122: --
8123: -- bulk performance
8124: --
8125: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
8126: p_header_num => 0); -- 4262811
8127: --
8128: -- set accounting line options
8129: --
8126: p_header_num => 0); -- 4262811
8127: --
8128: -- set accounting line options
8129: --
8130: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
8131: p_natural_side_code => 'C'
8132: , p_gain_or_loss_flag => 'N'
8133: , p_gl_transfer_mode_code => 'S'
8134: , p_acct_entry_type_code => 'A'
8140: --
8141: --
8142: -- set accounting line type info
8143: --
8144: xla_ae_lines_pkg.SetAcctLineType
8145: (p_component_type => l_component_type
8146: ,p_event_type_code => l_event_type_code
8147: ,p_line_definition_owner_code => l_line_definition_owner_code
8148: ,p_line_definition_code => l_line_definition_code
8154: ,p_event_class_code => l_event_class_code);
8155: --
8156: -- set accounting class
8157: --
8158: xla_ae_lines_pkg.SetAcctClass(
8159: p_accounting_class_code => 'TAX'
8160: , p_ae_header_id => l_ae_header_id
8161: );
8162:
8162:
8163: --
8164: -- set rounding class
8165: --
8166: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8167: 'RECEIVABLE';
8168:
8169: --
8170: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8166: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8167: 'RECEIVABLE';
8168:
8169: --
8170: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8171: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8172: --
8173: -- bulk performance
8174: --
8167: 'RECEIVABLE';
8168:
8169: --
8170: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8171: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8172: --
8173: -- bulk performance
8174: --
8175: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8171: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8172: --
8173: -- bulk performance
8174: --
8175: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8176:
8177: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8179:
8173: -- bulk performance
8174: --
8175: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8176:
8177: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8179:
8180: -- 4955764
8181: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8177: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8178: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8179:
8180: -- 4955764
8181: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8182: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
8183:
8184: -- 4458381 Public Sector Enh
8185:
8211: l_rec_acct_attrs.array_num_value(10) := p_source_31;
8212: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
8213: l_rec_acct_attrs.array_char_value(11) := p_source_32;
8214:
8215: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8216: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8217:
8218: ---------------------------------------------------------------------------------------------------------------
8219: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8212: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
8213: l_rec_acct_attrs.array_char_value(11) := p_source_32;
8214:
8215: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8216: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8217:
8218: ---------------------------------------------------------------------------------------------------------------
8219: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8220: ---------------------------------------------------------------------------------------------------------------
8215: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8216: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8217:
8218: ---------------------------------------------------------------------------------------------------------------
8219: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8220: ---------------------------------------------------------------------------------------------------------------
8221: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8222:
8223: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8217:
8218: ---------------------------------------------------------------------------------------------------------------
8219: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8220: ---------------------------------------------------------------------------------------------------------------
8221: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8222:
8223: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8224: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8225:
8219: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8220: ---------------------------------------------------------------------------------------------------------------
8221: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8222:
8223: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8224: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8225:
8226: IF xla_accounting_cache_pkg.GetValueChar
8227: (p_source_code => 'LEDGER_CATEGORY_CODE'
8220: ---------------------------------------------------------------------------------------------------------------
8221: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8222:
8223: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8224: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8225:
8226: IF xla_accounting_cache_pkg.GetValueChar
8227: (p_source_code => 'LEDGER_CATEGORY_CODE'
8228: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
8231: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
8232: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
8233: )
8234: THEN
8235: xla_ae_lines_pkg.BflowUpgEntry
8236: (p_business_method_code => l_bflow_method_code
8237: ,p_business_class_code => l_bflow_class_code
8238: ,p_balance_type => l_balance_type_code);
8239: ELSE
8271: , x_value_type_code => l_adr_value_type_code
8272: , p_side => 'NA'
8273: );
8274:
8275: xla_ae_lines_pkg.set_ccid(
8276: p_code_combination_id => l_ccid
8277: , p_value_type_code => l_adr_value_type_code
8278: , p_transaction_coa_id => l_adr_transaction_coa_id
8279: , p_accounting_coa_id => l_adr_accounting_coa_id
8307: xla_accounting_err_pkg.build_message
8308: (p_appli_s_name => 'XLA'
8309: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
8310: ,p_token_1 => 'LINE_NUMBER'
8311: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
8312: ,p_token_2 => 'LINE_TYPE_NAME'
8313: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
8314: l_component_type
8315: ,l_component_code
8343: --
8344: --
8345: ------------------------------------------------------------------------------------------------
8346: -- 4219869 Business Flow
8347: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8348: -- Prior Entry. Currently, the following code is always generated.
8349: ------------------------------------------------------------------------------------------------
8350: XLA_AE_LINES_PKG.ValidateCurrentLine;
8351:
8346: -- 4219869 Business Flow
8347: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8348: -- Prior Entry. Currently, the following code is always generated.
8349: ------------------------------------------------------------------------------------------------
8350: XLA_AE_LINES_PKG.ValidateCurrentLine;
8351:
8352: ------------------------------------------------------------------------------------
8353: -- 4219869 Business Flow
8354: -- Populated credit and debit amounts -- Need to generate this within IF
8352: ------------------------------------------------------------------------------------
8353: -- 4219869 Business Flow
8354: -- Populated credit and debit amounts -- Need to generate this within IF
8355: ------------------------------------------------------------------------------------
8356: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8357:
8358: ----------------------------------------------------------------------------------
8359: -- 4219869 Business Flow
8360: -- Update journal entry status -- Need to generate this within IF
8384: -- To allow MPA report to determine if it should generate report process
8385: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8386: ------------------------------------------------------------------------------------------
8387:
8388: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8389: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8390: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8391: -- call ADRs
8392: -- Bug 4922099
8385: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8386: ------------------------------------------------------------------------------------------
8387:
8388: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8389: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8390: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8391: -- call ADRs
8392: -- Bug 4922099
8393: --
8409: , x_value_type_code => l_adr_value_type_code
8410: , p_side => 'NA'
8411: );
8412:
8413: xla_ae_lines_pkg.set_ccid(
8414: p_code_combination_id => l_ccid
8415: , p_value_type_code => l_adr_value_type_code
8416: , p_transaction_coa_id => l_adr_transaction_coa_id
8417: , p_accounting_coa_id => l_adr_accounting_coa_id
8432:
8433: --
8434: -- Update the line information that should be overwritten
8435: --
8436: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8437: p_header_num => 1);
8438: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8439:
8440: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8434: -- Update the line information that should be overwritten
8435: --
8436: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8437: p_header_num => 1);
8438: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8439:
8440: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8441:
8442: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8436: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8437: p_header_num => 1);
8438: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8439:
8440: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8441:
8442: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8443: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8444: END IF;
8439:
8440: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8441:
8442: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8443: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8444: END IF;
8445:
8446: --
8447: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8446: --
8447: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8448: --
8449: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
8450: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
8451: ELSE
8452: ---------------------------------------------------------------------------------------------------
8453: -- 4262811a Switch Sign
8454: ---------------------------------------------------------------------------------------------------
8451: ELSE
8452: ---------------------------------------------------------------------------------------------------
8453: -- 4262811a Switch Sign
8454: ---------------------------------------------------------------------------------------------------
8455: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8456: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8457: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8458: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8459: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8452: ---------------------------------------------------------------------------------------------------
8453: -- 4262811a Switch Sign
8454: ---------------------------------------------------------------------------------------------------
8455: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8456: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8457: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8458: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8459: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8460: -- 5132302
8453: -- 4262811a Switch Sign
8454: ---------------------------------------------------------------------------------------------------
8455: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8456: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8457: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8458: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8459: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8460: -- 5132302
8461: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8454: ---------------------------------------------------------------------------------------------------
8455: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8456: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8457: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8458: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8459: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8460: -- 5132302
8461: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8462: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8455: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8456: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8457: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8458: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8459: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8460: -- 5132302
8461: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8462: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8463:
8457: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8458: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8459: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8460: -- 5132302
8461: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8462: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8463:
8464: END IF;
8465:
8458: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8459: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8460: -- 5132302
8461: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8462: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8463:
8464: END IF;
8465:
8466: -- 4955764
8463:
8464: END IF;
8465:
8466: -- 4955764
8467: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8468: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8469:
8470:
8471: XLA_AE_LINES_PKG.ValidateCurrentLine;
8467: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8468: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8469:
8470:
8471: XLA_AE_LINES_PKG.ValidateCurrentLine;
8472: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8473:
8474: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8475: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8468: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8469:
8470:
8471: XLA_AE_LINES_PKG.ValidateCurrentLine;
8472: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8473:
8474: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8475: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8476: ,p_balance_type_code => l_balance_type_code);
8607: --
8608: -- bulk performance
8609: --
8610: l_balance_type_code VARCHAR2(1);
8611: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
8612: l_log_module VARCHAR2(240);
8613:
8614: --
8615: -- Upgrade strategy
8675: ') = 'REC'
8676: THEN
8677:
8678: --
8679: XLA_AE_LINES_PKG.SetNewLine;
8680:
8681: p_balance_type_code := l_balance_type_code;
8682: -- set the flag so later we will know whether the gain loss line needs to be created
8683:
8687:
8688: --
8689: -- bulk performance
8690: --
8691: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
8692: p_header_num => 0); -- 4262811
8693: --
8694: -- set accounting line options
8695: --
8692: p_header_num => 0); -- 4262811
8693: --
8694: -- set accounting line options
8695: --
8696: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
8697: p_natural_side_code => 'D'
8698: , p_gain_or_loss_flag => 'N'
8699: , p_gl_transfer_mode_code => 'S'
8700: , p_acct_entry_type_code => 'A'
8706: --
8707: --
8708: -- set accounting line type info
8709: --
8710: xla_ae_lines_pkg.SetAcctLineType
8711: (p_component_type => l_component_type
8712: ,p_event_type_code => l_event_type_code
8713: ,p_line_definition_owner_code => l_line_definition_owner_code
8714: ,p_line_definition_code => l_line_definition_code
8720: ,p_event_class_code => l_event_class_code);
8721: --
8722: -- set accounting class
8723: --
8724: xla_ae_lines_pkg.SetAcctClass(
8725: p_accounting_class_code => 'RECEIVABLE'
8726: , p_ae_header_id => l_ae_header_id
8727: );
8728:
8728:
8729: --
8730: -- set rounding class
8731: --
8732: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8733: 'RECEIVABLE';
8734:
8735: --
8736: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8732: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8733: 'RECEIVABLE';
8734:
8735: --
8736: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8737: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8738: --
8739: -- bulk performance
8740: --
8733: 'RECEIVABLE';
8734:
8735: --
8736: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8737: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8738: --
8739: -- bulk performance
8740: --
8741: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8737: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8738: --
8739: -- bulk performance
8740: --
8741: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8742:
8743: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8744: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8745:
8739: -- bulk performance
8740: --
8741: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8742:
8743: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8744: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8745:
8746: -- 4955764
8747: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8743: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8744: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8745:
8746: -- 4955764
8747: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8748: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
8749:
8750: -- 4458381 Public Sector Enh
8751:
8777: l_rec_acct_attrs.array_num_value(10) := p_source_31;
8778: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
8779: l_rec_acct_attrs.array_char_value(11) := p_source_32;
8780:
8781: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8782: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8783:
8784: ---------------------------------------------------------------------------------------------------------------
8785: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8778: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
8779: l_rec_acct_attrs.array_char_value(11) := p_source_32;
8780:
8781: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8782: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8783:
8784: ---------------------------------------------------------------------------------------------------------------
8785: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8786: ---------------------------------------------------------------------------------------------------------------
8781: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8782: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8783:
8784: ---------------------------------------------------------------------------------------------------------------
8785: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8786: ---------------------------------------------------------------------------------------------------------------
8787: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8788:
8789: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8783:
8784: ---------------------------------------------------------------------------------------------------------------
8785: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8786: ---------------------------------------------------------------------------------------------------------------
8787: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8788:
8789: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8790: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8791:
8785: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8786: ---------------------------------------------------------------------------------------------------------------
8787: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8788:
8789: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8790: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8791:
8792: IF xla_accounting_cache_pkg.GetValueChar
8793: (p_source_code => 'LEDGER_CATEGORY_CODE'
8786: ---------------------------------------------------------------------------------------------------------------
8787: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8788:
8789: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8790: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8791:
8792: IF xla_accounting_cache_pkg.GetValueChar
8793: (p_source_code => 'LEDGER_CATEGORY_CODE'
8794: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
8797: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
8798: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
8799: )
8800: THEN
8801: xla_ae_lines_pkg.BflowUpgEntry
8802: (p_business_method_code => l_bflow_method_code
8803: ,p_business_class_code => l_bflow_class_code
8804: ,p_balance_type => l_balance_type_code);
8805: ELSE
8837: , x_value_type_code => l_adr_value_type_code
8838: , p_side => 'NA'
8839: );
8840:
8841: xla_ae_lines_pkg.set_ccid(
8842: p_code_combination_id => l_ccid
8843: , p_value_type_code => l_adr_value_type_code
8844: , p_transaction_coa_id => l_adr_transaction_coa_id
8845: , p_accounting_coa_id => l_adr_accounting_coa_id
8873: xla_accounting_err_pkg.build_message
8874: (p_appli_s_name => 'XLA'
8875: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
8876: ,p_token_1 => 'LINE_NUMBER'
8877: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
8878: ,p_token_2 => 'LINE_TYPE_NAME'
8879: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
8880: l_component_type
8881: ,l_component_code
8909: --
8910: --
8911: ------------------------------------------------------------------------------------------------
8912: -- 4219869 Business Flow
8913: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8914: -- Prior Entry. Currently, the following code is always generated.
8915: ------------------------------------------------------------------------------------------------
8916: XLA_AE_LINES_PKG.ValidateCurrentLine;
8917:
8912: -- 4219869 Business Flow
8913: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8914: -- Prior Entry. Currently, the following code is always generated.
8915: ------------------------------------------------------------------------------------------------
8916: XLA_AE_LINES_PKG.ValidateCurrentLine;
8917:
8918: ------------------------------------------------------------------------------------
8919: -- 4219869 Business Flow
8920: -- Populated credit and debit amounts -- Need to generate this within IF
8918: ------------------------------------------------------------------------------------
8919: -- 4219869 Business Flow
8920: -- Populated credit and debit amounts -- Need to generate this within IF
8921: ------------------------------------------------------------------------------------
8922: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8923:
8924: ----------------------------------------------------------------------------------
8925: -- 4219869 Business Flow
8926: -- Update journal entry status -- Need to generate this within IF
8950: -- To allow MPA report to determine if it should generate report process
8951: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8952: ------------------------------------------------------------------------------------------
8953:
8954: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8955: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8956: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8957: -- call ADRs
8958: -- Bug 4922099
8951: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8952: ------------------------------------------------------------------------------------------
8953:
8954: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8955: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8956: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8957: -- call ADRs
8958: -- Bug 4922099
8959: --
8975: , x_value_type_code => l_adr_value_type_code
8976: , p_side => 'NA'
8977: );
8978:
8979: xla_ae_lines_pkg.set_ccid(
8980: p_code_combination_id => l_ccid
8981: , p_value_type_code => l_adr_value_type_code
8982: , p_transaction_coa_id => l_adr_transaction_coa_id
8983: , p_accounting_coa_id => l_adr_accounting_coa_id
8998:
8999: --
9000: -- Update the line information that should be overwritten
9001: --
9002: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9003: p_header_num => 1);
9004: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9005:
9006: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9000: -- Update the line information that should be overwritten
9001: --
9002: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9003: p_header_num => 1);
9004: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9005:
9006: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9007:
9008: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9002: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9003: p_header_num => 1);
9004: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9005:
9006: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9007:
9008: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9009: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9010: END IF;
9005:
9006: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9007:
9008: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9009: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9010: END IF;
9011:
9012: --
9013: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9012: --
9013: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9014: --
9015: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
9016: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
9017: ELSE
9018: ---------------------------------------------------------------------------------------------------
9019: -- 4262811a Switch Sign
9020: ---------------------------------------------------------------------------------------------------
9017: ELSE
9018: ---------------------------------------------------------------------------------------------------
9019: -- 4262811a Switch Sign
9020: ---------------------------------------------------------------------------------------------------
9021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9018: ---------------------------------------------------------------------------------------------------
9019: -- 4262811a Switch Sign
9020: ---------------------------------------------------------------------------------------------------
9021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9026: -- 5132302
9019: -- 4262811a Switch Sign
9020: ---------------------------------------------------------------------------------------------------
9021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9026: -- 5132302
9027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9020: ---------------------------------------------------------------------------------------------------
9021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9026: -- 5132302
9027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9028: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9021: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9026: -- 5132302
9027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9028: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9029:
9023: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9026: -- 5132302
9027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9028: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9029:
9030: END IF;
9031:
9024: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9025: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9026: -- 5132302
9027: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9028: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9029:
9030: END IF;
9031:
9032: -- 4955764
9029:
9030: END IF;
9031:
9032: -- 4955764
9033: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9034: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9035:
9036:
9037: XLA_AE_LINES_PKG.ValidateCurrentLine;
9033: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9034: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9035:
9036:
9037: XLA_AE_LINES_PKG.ValidateCurrentLine;
9038: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9039:
9040: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9041: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9034: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9035:
9036:
9037: XLA_AE_LINES_PKG.ValidateCurrentLine;
9038: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9039:
9040: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9041: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9042: ,p_balance_type_code => l_balance_type_code);
9173: --
9174: -- bulk performance
9175: --
9176: l_balance_type_code VARCHAR2(1);
9177: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
9178: l_log_module VARCHAR2(240);
9179:
9180: --
9181: -- Upgrade strategy
9241: ') = 'REV'
9242: THEN
9243:
9244: --
9245: XLA_AE_LINES_PKG.SetNewLine;
9246:
9247: p_balance_type_code := l_balance_type_code;
9248: -- set the flag so later we will know whether the gain loss line needs to be created
9249:
9253:
9254: --
9255: -- bulk performance
9256: --
9257: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
9258: p_header_num => 0); -- 4262811
9259: --
9260: -- set accounting line options
9261: --
9258: p_header_num => 0); -- 4262811
9259: --
9260: -- set accounting line options
9261: --
9262: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
9263: p_natural_side_code => 'C'
9264: , p_gain_or_loss_flag => 'N'
9265: , p_gl_transfer_mode_code => 'S'
9266: , p_acct_entry_type_code => 'A'
9272: --
9273: --
9274: -- set accounting line type info
9275: --
9276: xla_ae_lines_pkg.SetAcctLineType
9277: (p_component_type => l_component_type
9278: ,p_event_type_code => l_event_type_code
9279: ,p_line_definition_owner_code => l_line_definition_owner_code
9280: ,p_line_definition_code => l_line_definition_code
9286: ,p_event_class_code => l_event_class_code);
9287: --
9288: -- set accounting class
9289: --
9290: xla_ae_lines_pkg.SetAcctClass(
9291: p_accounting_class_code => 'REVENUE'
9292: , p_ae_header_id => l_ae_header_id
9293: );
9294:
9294:
9295: --
9296: -- set rounding class
9297: --
9298: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9299: 'RECEIVABLE';
9300:
9301: --
9302: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9298: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9299: 'RECEIVABLE';
9300:
9301: --
9302: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9303: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9304: --
9305: -- bulk performance
9306: --
9299: 'RECEIVABLE';
9300:
9301: --
9302: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9303: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9304: --
9305: -- bulk performance
9306: --
9307: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9303: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9304: --
9305: -- bulk performance
9306: --
9307: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9308:
9309: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9310: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9311:
9305: -- bulk performance
9306: --
9307: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9308:
9309: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9310: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9311:
9312: -- 4955764
9313: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9309: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9310: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9311:
9312: -- 4955764
9313: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9314: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
9315:
9316: -- 4458381 Public Sector Enh
9317:
9343: l_rec_acct_attrs.array_num_value(10) := p_source_31;
9344: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
9345: l_rec_acct_attrs.array_char_value(11) := p_source_32;
9346:
9347: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9348: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9349:
9350: ---------------------------------------------------------------------------------------------------------------
9351: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9344: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
9345: l_rec_acct_attrs.array_char_value(11) := p_source_32;
9346:
9347: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9348: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9349:
9350: ---------------------------------------------------------------------------------------------------------------
9351: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9352: ---------------------------------------------------------------------------------------------------------------
9347: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9348: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9349:
9350: ---------------------------------------------------------------------------------------------------------------
9351: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9352: ---------------------------------------------------------------------------------------------------------------
9353: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9354:
9355: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9349:
9350: ---------------------------------------------------------------------------------------------------------------
9351: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9352: ---------------------------------------------------------------------------------------------------------------
9353: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9354:
9355: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9356: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9357:
9351: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9352: ---------------------------------------------------------------------------------------------------------------
9353: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9354:
9355: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9356: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9357:
9358: IF xla_accounting_cache_pkg.GetValueChar
9359: (p_source_code => 'LEDGER_CATEGORY_CODE'
9352: ---------------------------------------------------------------------------------------------------------------
9353: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9354:
9355: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9356: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9357:
9358: IF xla_accounting_cache_pkg.GetValueChar
9359: (p_source_code => 'LEDGER_CATEGORY_CODE'
9360: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
9363: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
9364: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
9365: )
9366: THEN
9367: xla_ae_lines_pkg.BflowUpgEntry
9368: (p_business_method_code => l_bflow_method_code
9369: ,p_business_class_code => l_bflow_class_code
9370: ,p_balance_type => l_balance_type_code);
9371: ELSE
9403: , x_value_type_code => l_adr_value_type_code
9404: , p_side => 'NA'
9405: );
9406:
9407: xla_ae_lines_pkg.set_ccid(
9408: p_code_combination_id => l_ccid
9409: , p_value_type_code => l_adr_value_type_code
9410: , p_transaction_coa_id => l_adr_transaction_coa_id
9411: , p_accounting_coa_id => l_adr_accounting_coa_id
9439: xla_accounting_err_pkg.build_message
9440: (p_appli_s_name => 'XLA'
9441: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
9442: ,p_token_1 => 'LINE_NUMBER'
9443: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
9444: ,p_token_2 => 'LINE_TYPE_NAME'
9445: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
9446: l_component_type
9447: ,l_component_code
9475: --
9476: --
9477: ------------------------------------------------------------------------------------------------
9478: -- 4219869 Business Flow
9479: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9480: -- Prior Entry. Currently, the following code is always generated.
9481: ------------------------------------------------------------------------------------------------
9482: XLA_AE_LINES_PKG.ValidateCurrentLine;
9483:
9478: -- 4219869 Business Flow
9479: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9480: -- Prior Entry. Currently, the following code is always generated.
9481: ------------------------------------------------------------------------------------------------
9482: XLA_AE_LINES_PKG.ValidateCurrentLine;
9483:
9484: ------------------------------------------------------------------------------------
9485: -- 4219869 Business Flow
9486: -- Populated credit and debit amounts -- Need to generate this within IF
9484: ------------------------------------------------------------------------------------
9485: -- 4219869 Business Flow
9486: -- Populated credit and debit amounts -- Need to generate this within IF
9487: ------------------------------------------------------------------------------------
9488: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9489:
9490: ----------------------------------------------------------------------------------
9491: -- 4219869 Business Flow
9492: -- Update journal entry status -- Need to generate this within IF
9516: -- To allow MPA report to determine if it should generate report process
9517: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9518: ------------------------------------------------------------------------------------------
9519:
9520: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9521: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9522: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9523: -- call ADRs
9524: -- Bug 4922099
9517: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9518: ------------------------------------------------------------------------------------------
9519:
9520: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9521: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9522: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9523: -- call ADRs
9524: -- Bug 4922099
9525: --
9541: , x_value_type_code => l_adr_value_type_code
9542: , p_side => 'NA'
9543: );
9544:
9545: xla_ae_lines_pkg.set_ccid(
9546: p_code_combination_id => l_ccid
9547: , p_value_type_code => l_adr_value_type_code
9548: , p_transaction_coa_id => l_adr_transaction_coa_id
9549: , p_accounting_coa_id => l_adr_accounting_coa_id
9564:
9565: --
9566: -- Update the line information that should be overwritten
9567: --
9568: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9569: p_header_num => 1);
9570: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9571:
9572: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9566: -- Update the line information that should be overwritten
9567: --
9568: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9569: p_header_num => 1);
9570: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9571:
9572: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9573:
9574: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9568: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9569: p_header_num => 1);
9570: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9571:
9572: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9573:
9574: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9575: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9576: END IF;
9571:
9572: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9573:
9574: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9575: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9576: END IF;
9577:
9578: --
9579: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9578: --
9579: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9580: --
9581: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
9582: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
9583: ELSE
9584: ---------------------------------------------------------------------------------------------------
9585: -- 4262811a Switch Sign
9586: ---------------------------------------------------------------------------------------------------
9583: ELSE
9584: ---------------------------------------------------------------------------------------------------
9585: -- 4262811a Switch Sign
9586: ---------------------------------------------------------------------------------------------------
9587: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9590: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9584: ---------------------------------------------------------------------------------------------------
9585: -- 4262811a Switch Sign
9586: ---------------------------------------------------------------------------------------------------
9587: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9590: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9592: -- 5132302
9585: -- 4262811a Switch Sign
9586: ---------------------------------------------------------------------------------------------------
9587: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9590: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9592: -- 5132302
9593: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9586: ---------------------------------------------------------------------------------------------------
9587: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9590: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9592: -- 5132302
9593: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9587: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9590: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9592: -- 5132302
9593: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9595:
9589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9590: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9592: -- 5132302
9593: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9595:
9596: END IF;
9597:
9590: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9592: -- 5132302
9593: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9595:
9596: END IF;
9597:
9598: -- 4955764
9595:
9596: END IF;
9597:
9598: -- 4955764
9599: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9600: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9601:
9602:
9603: XLA_AE_LINES_PKG.ValidateCurrentLine;
9599: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9600: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9601:
9602:
9603: XLA_AE_LINES_PKG.ValidateCurrentLine;
9604: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9605:
9606: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9607: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9600: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9601:
9602:
9603: XLA_AE_LINES_PKG.ValidateCurrentLine;
9604: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9605:
9606: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9607: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9608: ,p_balance_type_code => l_balance_type_code);
9743: --
9744: -- bulk performance
9745: --
9746: l_balance_type_code VARCHAR2(1);
9747: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
9748: l_log_module VARCHAR2(240);
9749:
9750: --
9751: -- Upgrade strategy
9811: ') = 'DEFERRED_TAX'
9812: THEN
9813:
9814: --
9815: XLA_AE_LINES_PKG.SetNewLine;
9816:
9817: p_balance_type_code := l_balance_type_code;
9818: -- set the flag so later we will know whether the gain loss line needs to be created
9819:
9823:
9824: --
9825: -- bulk performance
9826: --
9827: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
9828: p_header_num => 0); -- 4262811
9829: --
9830: -- set accounting line options
9831: --
9828: p_header_num => 0); -- 4262811
9829: --
9830: -- set accounting line options
9831: --
9832: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
9833: p_natural_side_code => 'C'
9834: , p_gain_or_loss_flag => 'N'
9835: , p_gl_transfer_mode_code => 'S'
9836: , p_acct_entry_type_code => 'A'
9842: --
9843: --
9844: -- set accounting line type info
9845: --
9846: xla_ae_lines_pkg.SetAcctLineType
9847: (p_component_type => l_component_type
9848: ,p_event_type_code => l_event_type_code
9849: ,p_line_definition_owner_code => l_line_definition_owner_code
9850: ,p_line_definition_code => l_line_definition_code
9856: ,p_event_class_code => l_event_class_code);
9857: --
9858: -- set accounting class
9859: --
9860: xla_ae_lines_pkg.SetAcctClass(
9861: p_accounting_class_code => 'DEFERRED_TAX'
9862: , p_ae_header_id => l_ae_header_id
9863: );
9864:
9864:
9865: --
9866: -- set rounding class
9867: --
9868: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9869: 'RECEIVABLE';
9870:
9871: --
9872: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9868: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9869: 'RECEIVABLE';
9870:
9871: --
9872: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9873: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9874: --
9875: -- bulk performance
9876: --
9869: 'RECEIVABLE';
9870:
9871: --
9872: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9873: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9874: --
9875: -- bulk performance
9876: --
9877: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9873: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9874: --
9875: -- bulk performance
9876: --
9877: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9878:
9879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9880: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9881:
9875: -- bulk performance
9876: --
9877: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9878:
9879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9880: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9881:
9882: -- 4955764
9883: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9879: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9880: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9881:
9882: -- 4955764
9883: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9884: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
9885:
9886: -- 4458381 Public Sector Enh
9887:
9917: l_rec_acct_attrs.array_char_value(12) := p_source_32;
9918: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
9919: l_rec_acct_attrs.array_num_value(13) := p_source_52;
9920:
9921: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9922: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9923:
9924: ---------------------------------------------------------------------------------------------------------------
9925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9918: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
9919: l_rec_acct_attrs.array_num_value(13) := p_source_52;
9920:
9921: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9922: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9923:
9924: ---------------------------------------------------------------------------------------------------------------
9925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9926: ---------------------------------------------------------------------------------------------------------------
9921: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9922: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9923:
9924: ---------------------------------------------------------------------------------------------------------------
9925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9926: ---------------------------------------------------------------------------------------------------------------
9927: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9928:
9929: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9923:
9924: ---------------------------------------------------------------------------------------------------------------
9925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9926: ---------------------------------------------------------------------------------------------------------------
9927: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9928:
9929: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9930: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9931:
9925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9926: ---------------------------------------------------------------------------------------------------------------
9927: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9928:
9929: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9930: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9931:
9932: IF xla_accounting_cache_pkg.GetValueChar
9933: (p_source_code => 'LEDGER_CATEGORY_CODE'
9926: ---------------------------------------------------------------------------------------------------------------
9927: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9928:
9929: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9930: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9931:
9932: IF xla_accounting_cache_pkg.GetValueChar
9933: (p_source_code => 'LEDGER_CATEGORY_CODE'
9934: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
9937: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
9938: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
9939: )
9940: THEN
9941: xla_ae_lines_pkg.BflowUpgEntry
9942: (p_business_method_code => l_bflow_method_code
9943: ,p_business_class_code => l_bflow_class_code
9944: ,p_balance_type => l_balance_type_code);
9945: ELSE
9977: , x_value_type_code => l_adr_value_type_code
9978: , p_side => 'NA'
9979: );
9980:
9981: xla_ae_lines_pkg.set_ccid(
9982: p_code_combination_id => l_ccid
9983: , p_value_type_code => l_adr_value_type_code
9984: , p_transaction_coa_id => l_adr_transaction_coa_id
9985: , p_accounting_coa_id => l_adr_accounting_coa_id
10013: xla_accounting_err_pkg.build_message
10014: (p_appli_s_name => 'XLA'
10015: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
10016: ,p_token_1 => 'LINE_NUMBER'
10017: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
10018: ,p_token_2 => 'LINE_TYPE_NAME'
10019: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
10020: l_component_type
10021: ,l_component_code
10049: --
10050: --
10051: ------------------------------------------------------------------------------------------------
10052: -- 4219869 Business Flow
10053: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10054: -- Prior Entry. Currently, the following code is always generated.
10055: ------------------------------------------------------------------------------------------------
10056: XLA_AE_LINES_PKG.ValidateCurrentLine;
10057:
10052: -- 4219869 Business Flow
10053: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10054: -- Prior Entry. Currently, the following code is always generated.
10055: ------------------------------------------------------------------------------------------------
10056: XLA_AE_LINES_PKG.ValidateCurrentLine;
10057:
10058: ------------------------------------------------------------------------------------
10059: -- 4219869 Business Flow
10060: -- Populated credit and debit amounts -- Need to generate this within IF
10058: ------------------------------------------------------------------------------------
10059: -- 4219869 Business Flow
10060: -- Populated credit and debit amounts -- Need to generate this within IF
10061: ------------------------------------------------------------------------------------
10062: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10063:
10064: ----------------------------------------------------------------------------------
10065: -- 4219869 Business Flow
10066: -- Update journal entry status -- Need to generate this within IF
10090: -- To allow MPA report to determine if it should generate report process
10091: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10092: ------------------------------------------------------------------------------------------
10093:
10094: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10095: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10096: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10097: -- call ADRs
10098: -- Bug 4922099
10091: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10092: ------------------------------------------------------------------------------------------
10093:
10094: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10095: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10096: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10097: -- call ADRs
10098: -- Bug 4922099
10099: --
10115: , x_value_type_code => l_adr_value_type_code
10116: , p_side => 'NA'
10117: );
10118:
10119: xla_ae_lines_pkg.set_ccid(
10120: p_code_combination_id => l_ccid
10121: , p_value_type_code => l_adr_value_type_code
10122: , p_transaction_coa_id => l_adr_transaction_coa_id
10123: , p_accounting_coa_id => l_adr_accounting_coa_id
10138:
10139: --
10140: -- Update the line information that should be overwritten
10141: --
10142: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10143: p_header_num => 1);
10144: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10145:
10146: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10140: -- Update the line information that should be overwritten
10141: --
10142: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10143: p_header_num => 1);
10144: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10145:
10146: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10147:
10148: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10142: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10143: p_header_num => 1);
10144: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10145:
10146: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10147:
10148: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10149: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10150: END IF;
10145:
10146: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10147:
10148: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10149: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10150: END IF;
10151:
10152: --
10153: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10152: --
10153: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10154: --
10155: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
10156: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
10157: ELSE
10158: ---------------------------------------------------------------------------------------------------
10159: -- 4262811a Switch Sign
10160: ---------------------------------------------------------------------------------------------------
10157: ELSE
10158: ---------------------------------------------------------------------------------------------------
10159: -- 4262811a Switch Sign
10160: ---------------------------------------------------------------------------------------------------
10161: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10163: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10164: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10165: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10158: ---------------------------------------------------------------------------------------------------
10159: -- 4262811a Switch Sign
10160: ---------------------------------------------------------------------------------------------------
10161: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10163: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10164: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10165: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10166: -- 5132302
10159: -- 4262811a Switch Sign
10160: ---------------------------------------------------------------------------------------------------
10161: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10163: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10164: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10165: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10166: -- 5132302
10167: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10160: ---------------------------------------------------------------------------------------------------
10161: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10163: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10164: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10165: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10166: -- 5132302
10167: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10168: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10161: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10162: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10163: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10164: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10165: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10166: -- 5132302
10167: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10168: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10169:
10163: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10164: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10165: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10166: -- 5132302
10167: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10168: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10169:
10170: END IF;
10171:
10164: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10165: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10166: -- 5132302
10167: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10168: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10169:
10170: END IF;
10171:
10172: -- 4955764
10169:
10170: END IF;
10171:
10172: -- 4955764
10173: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10174: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10175:
10176:
10177: XLA_AE_LINES_PKG.ValidateCurrentLine;
10173: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10174: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10175:
10176:
10177: XLA_AE_LINES_PKG.ValidateCurrentLine;
10178: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10179:
10180: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10181: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10174: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10175:
10176:
10177: XLA_AE_LINES_PKG.ValidateCurrentLine;
10178: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10179:
10180: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10181: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10182: ,p_balance_type_code => l_balance_type_code);
10323: --
10324: -- bulk performance
10325: --
10326: l_balance_type_code VARCHAR2(1);
10327: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
10328: l_log_module VARCHAR2(240);
10329:
10330: --
10331: -- Upgrade strategy
10391: ') = 'REC'
10392: THEN
10393:
10394: --
10395: XLA_AE_LINES_PKG.SetNewLine;
10396:
10397: p_balance_type_code := l_balance_type_code;
10398: -- set the flag so later we will know whether the gain loss line needs to be created
10399:
10403:
10404: --
10405: -- bulk performance
10406: --
10407: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
10408: p_header_num => 0); -- 4262811
10409: --
10410: -- set accounting line options
10411: --
10408: p_header_num => 0); -- 4262811
10409: --
10410: -- set accounting line options
10411: --
10412: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
10413: p_natural_side_code => 'C'
10414: , p_gain_or_loss_flag => 'N'
10415: , p_gl_transfer_mode_code => 'S'
10416: , p_acct_entry_type_code => 'A'
10422: --
10423: --
10424: -- set accounting line type info
10425: --
10426: xla_ae_lines_pkg.SetAcctLineType
10427: (p_component_type => l_component_type
10428: ,p_event_type_code => l_event_type_code
10429: ,p_line_definition_owner_code => l_line_definition_owner_code
10430: ,p_line_definition_code => l_line_definition_code
10436: ,p_event_class_code => l_event_class_code);
10437: --
10438: -- set accounting class
10439: --
10440: xla_ae_lines_pkg.SetAcctClass(
10441: p_accounting_class_code => 'RECEIVABLE'
10442: , p_ae_header_id => l_ae_header_id
10443: );
10444:
10444:
10445: --
10446: -- set rounding class
10447: --
10448: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10449: 'RECEIVABLE';
10450:
10451: --
10452: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10448: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10449: 'RECEIVABLE';
10450:
10451: --
10452: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10453: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10454: --
10455: -- bulk performance
10456: --
10449: 'RECEIVABLE';
10450:
10451: --
10452: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10453: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10454: --
10455: -- bulk performance
10456: --
10457: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10453: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10454: --
10455: -- bulk performance
10456: --
10457: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10458:
10459: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10460: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10461:
10455: -- bulk performance
10456: --
10457: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10458:
10459: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10460: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10461:
10462: -- 4955764
10463: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10459: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10460: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10461:
10462: -- 4955764
10463: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10464: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
10465:
10466: -- 4458381 Public Sector Enh
10467:
10497: l_rec_acct_attrs.array_char_value(12) := p_source_32;
10498: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
10499: l_rec_acct_attrs.array_num_value(13) := p_source_52;
10500:
10501: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10502: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10503:
10504: ---------------------------------------------------------------------------------------------------------------
10505: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10498: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
10499: l_rec_acct_attrs.array_num_value(13) := p_source_52;
10500:
10501: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10502: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10503:
10504: ---------------------------------------------------------------------------------------------------------------
10505: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10506: ---------------------------------------------------------------------------------------------------------------
10501: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10502: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10503:
10504: ---------------------------------------------------------------------------------------------------------------
10505: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10506: ---------------------------------------------------------------------------------------------------------------
10507: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10508:
10509: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10503:
10504: ---------------------------------------------------------------------------------------------------------------
10505: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10506: ---------------------------------------------------------------------------------------------------------------
10507: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10508:
10509: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10510: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10511:
10505: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10506: ---------------------------------------------------------------------------------------------------------------
10507: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10508:
10509: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10510: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10511:
10512: IF xla_accounting_cache_pkg.GetValueChar
10513: (p_source_code => 'LEDGER_CATEGORY_CODE'
10506: ---------------------------------------------------------------------------------------------------------------
10507: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10508:
10509: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10510: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10511:
10512: IF xla_accounting_cache_pkg.GetValueChar
10513: (p_source_code => 'LEDGER_CATEGORY_CODE'
10514: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
10517: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
10518: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
10519: )
10520: THEN
10521: xla_ae_lines_pkg.BflowUpgEntry
10522: (p_business_method_code => l_bflow_method_code
10523: ,p_business_class_code => l_bflow_class_code
10524: ,p_balance_type => l_balance_type_code);
10525: ELSE
10534: --
10535: -- call description
10536: --
10537:
10538: xla_ae_lines_pkg.SetLineDescription(
10539: p_ae_header_id => l_ae_header_id
10540: ,p_description => Description_1 (
10541: p_application_id => p_application_id
10542: , p_ae_header_id => l_ae_header_id
10569: , x_value_type_code => l_adr_value_type_code
10570: , p_side => 'NA'
10571: );
10572:
10573: xla_ae_lines_pkg.set_ccid(
10574: p_code_combination_id => l_ccid
10575: , p_value_type_code => l_adr_value_type_code
10576: , p_transaction_coa_id => l_adr_transaction_coa_id
10577: , p_accounting_coa_id => l_adr_accounting_coa_id
10605: xla_accounting_err_pkg.build_message
10606: (p_appli_s_name => 'XLA'
10607: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
10608: ,p_token_1 => 'LINE_NUMBER'
10609: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
10610: ,p_token_2 => 'LINE_TYPE_NAME'
10611: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
10612: l_component_type
10613: ,l_component_code
10641: --
10642: --
10643: ------------------------------------------------------------------------------------------------
10644: -- 4219869 Business Flow
10645: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10646: -- Prior Entry. Currently, the following code is always generated.
10647: ------------------------------------------------------------------------------------------------
10648: XLA_AE_LINES_PKG.ValidateCurrentLine;
10649:
10644: -- 4219869 Business Flow
10645: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10646: -- Prior Entry. Currently, the following code is always generated.
10647: ------------------------------------------------------------------------------------------------
10648: XLA_AE_LINES_PKG.ValidateCurrentLine;
10649:
10650: ------------------------------------------------------------------------------------
10651: -- 4219869 Business Flow
10652: -- Populated credit and debit amounts -- Need to generate this within IF
10650: ------------------------------------------------------------------------------------
10651: -- 4219869 Business Flow
10652: -- Populated credit and debit amounts -- Need to generate this within IF
10653: ------------------------------------------------------------------------------------
10654: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10655:
10656: ----------------------------------------------------------------------------------
10657: -- 4219869 Business Flow
10658: -- Update journal entry status -- Need to generate this within IF
10682: -- To allow MPA report to determine if it should generate report process
10683: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10684: ------------------------------------------------------------------------------------------
10685:
10686: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10687: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10688: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10689: -- call ADRs
10690: -- Bug 4922099
10683: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10684: ------------------------------------------------------------------------------------------
10685:
10686: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10687: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10688: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10689: -- call ADRs
10690: -- Bug 4922099
10691: --
10707: , x_value_type_code => l_adr_value_type_code
10708: , p_side => 'NA'
10709: );
10710:
10711: xla_ae_lines_pkg.set_ccid(
10712: p_code_combination_id => l_ccid
10713: , p_value_type_code => l_adr_value_type_code
10714: , p_transaction_coa_id => l_adr_transaction_coa_id
10715: , p_accounting_coa_id => l_adr_accounting_coa_id
10730:
10731: --
10732: -- Update the line information that should be overwritten
10733: --
10734: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10735: p_header_num => 1);
10736: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10737:
10738: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10732: -- Update the line information that should be overwritten
10733: --
10734: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10735: p_header_num => 1);
10736: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10737:
10738: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10739:
10740: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10734: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10735: p_header_num => 1);
10736: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10737:
10738: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10739:
10740: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10741: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10742: END IF;
10737:
10738: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10739:
10740: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10741: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10742: END IF;
10743:
10744: --
10745: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10744: --
10745: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10746: --
10747: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
10748: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
10749: ELSE
10750: ---------------------------------------------------------------------------------------------------
10751: -- 4262811a Switch Sign
10752: ---------------------------------------------------------------------------------------------------
10749: ELSE
10750: ---------------------------------------------------------------------------------------------------
10751: -- 4262811a Switch Sign
10752: ---------------------------------------------------------------------------------------------------
10753: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10754: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10755: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10756: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10757: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10750: ---------------------------------------------------------------------------------------------------
10751: -- 4262811a Switch Sign
10752: ---------------------------------------------------------------------------------------------------
10753: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10754: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10755: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10756: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10757: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10758: -- 5132302
10751: -- 4262811a Switch Sign
10752: ---------------------------------------------------------------------------------------------------
10753: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10754: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10755: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10756: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10757: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10758: -- 5132302
10759: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10752: ---------------------------------------------------------------------------------------------------
10753: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10754: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10755: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10756: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10757: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10758: -- 5132302
10759: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10760: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10753: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10754: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10755: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10756: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10757: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10758: -- 5132302
10759: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10760: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10761:
10755: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10756: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10757: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10758: -- 5132302
10759: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10760: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10761:
10762: END IF;
10763:
10756: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10757: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10758: -- 5132302
10759: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10760: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10761:
10762: END IF;
10763:
10764: -- 4955764
10761:
10762: END IF;
10763:
10764: -- 4955764
10765: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10766: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10767:
10768:
10769: XLA_AE_LINES_PKG.ValidateCurrentLine;
10765: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10766: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10767:
10768:
10769: XLA_AE_LINES_PKG.ValidateCurrentLine;
10770: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10771:
10772: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10773: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10766: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10767:
10768:
10769: XLA_AE_LINES_PKG.ValidateCurrentLine;
10770: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10771:
10772: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10773: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10774: ,p_balance_type_code => l_balance_type_code);
10909: --
10910: -- bulk performance
10911: --
10912: l_balance_type_code VARCHAR2(1);
10913: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
10914: l_log_module VARCHAR2(240);
10915:
10916: --
10917: -- Upgrade strategy
10977: ') = 'TAX'
10978: THEN
10979:
10980: --
10981: XLA_AE_LINES_PKG.SetNewLine;
10982:
10983: p_balance_type_code := l_balance_type_code;
10984: -- set the flag so later we will know whether the gain loss line needs to be created
10985:
10989:
10990: --
10991: -- bulk performance
10992: --
10993: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
10994: p_header_num => 0); -- 4262811
10995: --
10996: -- set accounting line options
10997: --
10994: p_header_num => 0); -- 4262811
10995: --
10996: -- set accounting line options
10997: --
10998: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
10999: p_natural_side_code => 'C'
11000: , p_gain_or_loss_flag => 'N'
11001: , p_gl_transfer_mode_code => 'S'
11002: , p_acct_entry_type_code => 'A'
11008: --
11009: --
11010: -- set accounting line type info
11011: --
11012: xla_ae_lines_pkg.SetAcctLineType
11013: (p_component_type => l_component_type
11014: ,p_event_type_code => l_event_type_code
11015: ,p_line_definition_owner_code => l_line_definition_owner_code
11016: ,p_line_definition_code => l_line_definition_code
11022: ,p_event_class_code => l_event_class_code);
11023: --
11024: -- set accounting class
11025: --
11026: xla_ae_lines_pkg.SetAcctClass(
11027: p_accounting_class_code => 'TAX'
11028: , p_ae_header_id => l_ae_header_id
11029: );
11030:
11030:
11031: --
11032: -- set rounding class
11033: --
11034: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11035: 'RECEIVABLE';
11036:
11037: --
11038: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11034: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11035: 'RECEIVABLE';
11036:
11037: --
11038: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11039: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11040: --
11041: -- bulk performance
11042: --
11035: 'RECEIVABLE';
11036:
11037: --
11038: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11039: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11040: --
11041: -- bulk performance
11042: --
11043: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11039: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11040: --
11041: -- bulk performance
11042: --
11043: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11044:
11045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11046: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11047:
11041: -- bulk performance
11042: --
11043: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11044:
11045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11046: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11047:
11048: -- 4955764
11049: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11046: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11047:
11048: -- 4955764
11049: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11050: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
11051:
11052: -- 4458381 Public Sector Enh
11053:
11083: l_rec_acct_attrs.array_char_value(12) := p_source_32;
11084: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
11085: l_rec_acct_attrs.array_num_value(13) := p_source_52;
11086:
11087: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11088: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11089:
11090: ---------------------------------------------------------------------------------------------------------------
11091: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11084: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
11085: l_rec_acct_attrs.array_num_value(13) := p_source_52;
11086:
11087: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11088: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11089:
11090: ---------------------------------------------------------------------------------------------------------------
11091: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11092: ---------------------------------------------------------------------------------------------------------------
11087: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11088: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11089:
11090: ---------------------------------------------------------------------------------------------------------------
11091: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11092: ---------------------------------------------------------------------------------------------------------------
11093: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11094:
11095: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11089:
11090: ---------------------------------------------------------------------------------------------------------------
11091: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11092: ---------------------------------------------------------------------------------------------------------------
11093: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11094:
11095: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11096: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11097:
11091: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11092: ---------------------------------------------------------------------------------------------------------------
11093: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11094:
11095: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11096: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11097:
11098: IF xla_accounting_cache_pkg.GetValueChar
11099: (p_source_code => 'LEDGER_CATEGORY_CODE'
11092: ---------------------------------------------------------------------------------------------------------------
11093: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11094:
11095: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11096: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11097:
11098: IF xla_accounting_cache_pkg.GetValueChar
11099: (p_source_code => 'LEDGER_CATEGORY_CODE'
11100: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
11103: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
11104: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
11105: )
11106: THEN
11107: xla_ae_lines_pkg.BflowUpgEntry
11108: (p_business_method_code => l_bflow_method_code
11109: ,p_business_class_code => l_bflow_class_code
11110: ,p_balance_type => l_balance_type_code);
11111: ELSE
11143: , x_value_type_code => l_adr_value_type_code
11144: , p_side => 'NA'
11145: );
11146:
11147: xla_ae_lines_pkg.set_ccid(
11148: p_code_combination_id => l_ccid
11149: , p_value_type_code => l_adr_value_type_code
11150: , p_transaction_coa_id => l_adr_transaction_coa_id
11151: , p_accounting_coa_id => l_adr_accounting_coa_id
11179: xla_accounting_err_pkg.build_message
11180: (p_appli_s_name => 'XLA'
11181: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
11182: ,p_token_1 => 'LINE_NUMBER'
11183: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
11184: ,p_token_2 => 'LINE_TYPE_NAME'
11185: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
11186: l_component_type
11187: ,l_component_code
11215: --
11216: --
11217: ------------------------------------------------------------------------------------------------
11218: -- 4219869 Business Flow
11219: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11220: -- Prior Entry. Currently, the following code is always generated.
11221: ------------------------------------------------------------------------------------------------
11222: XLA_AE_LINES_PKG.ValidateCurrentLine;
11223:
11218: -- 4219869 Business Flow
11219: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11220: -- Prior Entry. Currently, the following code is always generated.
11221: ------------------------------------------------------------------------------------------------
11222: XLA_AE_LINES_PKG.ValidateCurrentLine;
11223:
11224: ------------------------------------------------------------------------------------
11225: -- 4219869 Business Flow
11226: -- Populated credit and debit amounts -- Need to generate this within IF
11224: ------------------------------------------------------------------------------------
11225: -- 4219869 Business Flow
11226: -- Populated credit and debit amounts -- Need to generate this within IF
11227: ------------------------------------------------------------------------------------
11228: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11229:
11230: ----------------------------------------------------------------------------------
11231: -- 4219869 Business Flow
11232: -- Update journal entry status -- Need to generate this within IF
11256: -- To allow MPA report to determine if it should generate report process
11257: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11258: ------------------------------------------------------------------------------------------
11259:
11260: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11261: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11262: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11263: -- call ADRs
11264: -- Bug 4922099
11257: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11258: ------------------------------------------------------------------------------------------
11259:
11260: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11261: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11262: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11263: -- call ADRs
11264: -- Bug 4922099
11265: --
11281: , x_value_type_code => l_adr_value_type_code
11282: , p_side => 'NA'
11283: );
11284:
11285: xla_ae_lines_pkg.set_ccid(
11286: p_code_combination_id => l_ccid
11287: , p_value_type_code => l_adr_value_type_code
11288: , p_transaction_coa_id => l_adr_transaction_coa_id
11289: , p_accounting_coa_id => l_adr_accounting_coa_id
11304:
11305: --
11306: -- Update the line information that should be overwritten
11307: --
11308: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11309: p_header_num => 1);
11310: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11311:
11312: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11306: -- Update the line information that should be overwritten
11307: --
11308: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11309: p_header_num => 1);
11310: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11311:
11312: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11313:
11314: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11308: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11309: p_header_num => 1);
11310: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11311:
11312: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11313:
11314: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11315: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11316: END IF;
11311:
11312: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11313:
11314: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11315: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11316: END IF;
11317:
11318: --
11319: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11318: --
11319: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11320: --
11321: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
11322: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
11323: ELSE
11324: ---------------------------------------------------------------------------------------------------
11325: -- 4262811a Switch Sign
11326: ---------------------------------------------------------------------------------------------------
11323: ELSE
11324: ---------------------------------------------------------------------------------------------------
11325: -- 4262811a Switch Sign
11326: ---------------------------------------------------------------------------------------------------
11327: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11329: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11331: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11324: ---------------------------------------------------------------------------------------------------
11325: -- 4262811a Switch Sign
11326: ---------------------------------------------------------------------------------------------------
11327: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11329: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11331: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11332: -- 5132302
11325: -- 4262811a Switch Sign
11326: ---------------------------------------------------------------------------------------------------
11327: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11329: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11331: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11332: -- 5132302
11333: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11326: ---------------------------------------------------------------------------------------------------
11327: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11329: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11331: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11332: -- 5132302
11333: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11334: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11327: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11329: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11331: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11332: -- 5132302
11333: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11334: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11335:
11329: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11331: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11332: -- 5132302
11333: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11334: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11335:
11336: END IF;
11337:
11330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11331: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11332: -- 5132302
11333: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11334: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11335:
11336: END IF;
11337:
11338: -- 4955764
11335:
11336: END IF;
11337:
11338: -- 4955764
11339: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11340: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11341:
11342:
11343: XLA_AE_LINES_PKG.ValidateCurrentLine;
11339: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11340: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11341:
11342:
11343: XLA_AE_LINES_PKG.ValidateCurrentLine;
11344: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11345:
11346: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11347: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11340: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11341:
11342:
11343: XLA_AE_LINES_PKG.ValidateCurrentLine;
11344: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11345:
11346: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11347: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11348: ,p_balance_type_code => l_balance_type_code);
11485: --
11486: -- bulk performance
11487: --
11488: l_balance_type_code VARCHAR2(1);
11489: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
11490: l_log_module VARCHAR2(240);
11491:
11492: --
11493: -- Upgrade strategy
11559: ') = 'CM_REFUND')
11560: THEN
11561:
11562: --
11563: XLA_AE_LINES_PKG.SetNewLine;
11564:
11565: p_balance_type_code := l_balance_type_code;
11566: -- set the flag so later we will know whether the gain loss line needs to be created
11567:
11571:
11572: --
11573: -- bulk performance
11574: --
11575: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
11576: p_header_num => 0); -- 4262811
11577: --
11578: -- set accounting line options
11579: --
11576: p_header_num => 0); -- 4262811
11577: --
11578: -- set accounting line options
11579: --
11580: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
11581: p_natural_side_code => 'C'
11582: , p_gain_or_loss_flag => 'N'
11583: , p_gl_transfer_mode_code => 'S'
11584: , p_acct_entry_type_code => 'A'
11590: --
11591: --
11592: -- set accounting line type info
11593: --
11594: xla_ae_lines_pkg.SetAcctLineType
11595: (p_component_type => l_component_type
11596: ,p_event_type_code => l_event_type_code
11597: ,p_line_definition_owner_code => l_line_definition_owner_code
11598: ,p_line_definition_code => l_line_definition_code
11604: ,p_event_class_code => l_event_class_code);
11605: --
11606: -- set accounting class
11607: --
11608: xla_ae_lines_pkg.SetAcctClass(
11609: p_accounting_class_code => 'REFUND'
11610: , p_ae_header_id => l_ae_header_id
11611: );
11612:
11612:
11613: --
11614: -- set rounding class
11615: --
11616: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11617: 'REFUND';
11618:
11619: --
11620: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11616: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11617: 'REFUND';
11618:
11619: --
11620: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11621: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11622: --
11623: -- bulk performance
11624: --
11617: 'REFUND';
11618:
11619: --
11620: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11621: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11622: --
11623: -- bulk performance
11624: --
11625: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11621: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11622: --
11623: -- bulk performance
11624: --
11625: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11626:
11627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11628: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11629:
11623: -- bulk performance
11624: --
11625: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11626:
11627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11628: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11629:
11630: -- 4955764
11631: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11627: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11628: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11629:
11630: -- 4955764
11631: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11632: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
11633:
11634: -- 4458381 Public Sector Enh
11635:
11665: l_rec_acct_attrs.array_char_value(12) := p_source_32;
11666: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
11667: l_rec_acct_attrs.array_num_value(13) := p_source_52;
11668:
11669: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11670: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11671:
11672: ---------------------------------------------------------------------------------------------------------------
11673: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11666: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
11667: l_rec_acct_attrs.array_num_value(13) := p_source_52;
11668:
11669: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11670: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11671:
11672: ---------------------------------------------------------------------------------------------------------------
11673: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11674: ---------------------------------------------------------------------------------------------------------------
11669: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11670: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11671:
11672: ---------------------------------------------------------------------------------------------------------------
11673: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11674: ---------------------------------------------------------------------------------------------------------------
11675: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11676:
11677: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11671:
11672: ---------------------------------------------------------------------------------------------------------------
11673: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11674: ---------------------------------------------------------------------------------------------------------------
11675: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11676:
11677: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11678: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11679:
11673: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11674: ---------------------------------------------------------------------------------------------------------------
11675: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11676:
11677: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11678: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11679:
11680: IF xla_accounting_cache_pkg.GetValueChar
11681: (p_source_code => 'LEDGER_CATEGORY_CODE'
11674: ---------------------------------------------------------------------------------------------------------------
11675: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11676:
11677: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11678: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11679:
11680: IF xla_accounting_cache_pkg.GetValueChar
11681: (p_source_code => 'LEDGER_CATEGORY_CODE'
11682: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
11685: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
11686: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
11687: )
11688: THEN
11689: xla_ae_lines_pkg.BflowUpgEntry
11690: (p_business_method_code => l_bflow_method_code
11691: ,p_business_class_code => l_bflow_class_code
11692: ,p_balance_type => l_balance_type_code);
11693: ELSE
11725: , x_value_type_code => l_adr_value_type_code
11726: , p_side => 'NA'
11727: );
11728:
11729: xla_ae_lines_pkg.set_ccid(
11730: p_code_combination_id => l_ccid
11731: , p_value_type_code => l_adr_value_type_code
11732: , p_transaction_coa_id => l_adr_transaction_coa_id
11733: , p_accounting_coa_id => l_adr_accounting_coa_id
11761: xla_accounting_err_pkg.build_message
11762: (p_appli_s_name => 'XLA'
11763: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
11764: ,p_token_1 => 'LINE_NUMBER'
11765: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
11766: ,p_token_2 => 'LINE_TYPE_NAME'
11767: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
11768: l_component_type
11769: ,l_component_code
11797: --
11798: --
11799: ------------------------------------------------------------------------------------------------
11800: -- 4219869 Business Flow
11801: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11802: -- Prior Entry. Currently, the following code is always generated.
11803: ------------------------------------------------------------------------------------------------
11804: XLA_AE_LINES_PKG.ValidateCurrentLine;
11805:
11800: -- 4219869 Business Flow
11801: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11802: -- Prior Entry. Currently, the following code is always generated.
11803: ------------------------------------------------------------------------------------------------
11804: XLA_AE_LINES_PKG.ValidateCurrentLine;
11805:
11806: ------------------------------------------------------------------------------------
11807: -- 4219869 Business Flow
11808: -- Populated credit and debit amounts -- Need to generate this within IF
11806: ------------------------------------------------------------------------------------
11807: -- 4219869 Business Flow
11808: -- Populated credit and debit amounts -- Need to generate this within IF
11809: ------------------------------------------------------------------------------------
11810: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11811:
11812: ----------------------------------------------------------------------------------
11813: -- 4219869 Business Flow
11814: -- Update journal entry status -- Need to generate this within IF
11838: -- To allow MPA report to determine if it should generate report process
11839: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11840: ------------------------------------------------------------------------------------------
11841:
11842: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11843: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11844: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11845: -- call ADRs
11846: -- Bug 4922099
11839: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11840: ------------------------------------------------------------------------------------------
11841:
11842: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11843: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11844: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11845: -- call ADRs
11846: -- Bug 4922099
11847: --
11863: , x_value_type_code => l_adr_value_type_code
11864: , p_side => 'NA'
11865: );
11866:
11867: xla_ae_lines_pkg.set_ccid(
11868: p_code_combination_id => l_ccid
11869: , p_value_type_code => l_adr_value_type_code
11870: , p_transaction_coa_id => l_adr_transaction_coa_id
11871: , p_accounting_coa_id => l_adr_accounting_coa_id
11886:
11887: --
11888: -- Update the line information that should be overwritten
11889: --
11890: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11891: p_header_num => 1);
11892: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11893:
11894: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11888: -- Update the line information that should be overwritten
11889: --
11890: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11891: p_header_num => 1);
11892: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11893:
11894: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11895:
11896: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11890: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11891: p_header_num => 1);
11892: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11893:
11894: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11895:
11896: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11897: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11898: END IF;
11893:
11894: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11895:
11896: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11897: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11898: END IF;
11899:
11900: --
11901: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11900: --
11901: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11902: --
11903: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
11904: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
11905: ELSE
11906: ---------------------------------------------------------------------------------------------------
11907: -- 4262811a Switch Sign
11908: ---------------------------------------------------------------------------------------------------
11905: ELSE
11906: ---------------------------------------------------------------------------------------------------
11907: -- 4262811a Switch Sign
11908: ---------------------------------------------------------------------------------------------------
11909: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11910: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11911: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11912: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11913: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11906: ---------------------------------------------------------------------------------------------------
11907: -- 4262811a Switch Sign
11908: ---------------------------------------------------------------------------------------------------
11909: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11910: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11911: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11912: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11913: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11914: -- 5132302
11907: -- 4262811a Switch Sign
11908: ---------------------------------------------------------------------------------------------------
11909: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11910: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11911: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11912: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11913: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11914: -- 5132302
11915: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11908: ---------------------------------------------------------------------------------------------------
11909: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11910: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11911: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11912: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11913: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11914: -- 5132302
11915: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11916: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11909: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11910: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11911: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11912: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11913: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11914: -- 5132302
11915: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11916: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11917:
11911: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11912: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11913: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11914: -- 5132302
11915: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11916: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11917:
11918: END IF;
11919:
11912: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11913: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11914: -- 5132302
11915: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11916: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11917:
11918: END IF;
11919:
11920: -- 4955764
11917:
11918: END IF;
11919:
11920: -- 4955764
11921: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11922: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11923:
11924:
11925: XLA_AE_LINES_PKG.ValidateCurrentLine;
11921: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11922: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11923:
11924:
11925: XLA_AE_LINES_PKG.ValidateCurrentLine;
11926: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11927:
11928: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11929: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11922: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11923:
11924:
11925: XLA_AE_LINES_PKG.ValidateCurrentLine;
11926: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11927:
11928: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11929: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11930: ,p_balance_type_code => l_balance_type_code);
12065: --
12066: -- bulk performance
12067: --
12068: l_balance_type_code VARCHAR2(1);
12069: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
12070: l_log_module VARCHAR2(240);
12071:
12072: --
12073: -- Upgrade strategy
12133: ') = 'CHARGES'
12134: THEN
12135:
12136: --
12137: XLA_AE_LINES_PKG.SetNewLine;
12138:
12139: p_balance_type_code := l_balance_type_code;
12140: -- set the flag so later we will know whether the gain loss line needs to be created
12141:
12145:
12146: --
12147: -- bulk performance
12148: --
12149: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
12150: p_header_num => 0); -- 4262811
12151: --
12152: -- set accounting line options
12153: --
12150: p_header_num => 0); -- 4262811
12151: --
12152: -- set accounting line options
12153: --
12154: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
12155: p_natural_side_code => 'C'
12156: , p_gain_or_loss_flag => 'N'
12157: , p_gl_transfer_mode_code => 'S'
12158: , p_acct_entry_type_code => 'A'
12164: --
12165: --
12166: -- set accounting line type info
12167: --
12168: xla_ae_lines_pkg.SetAcctLineType
12169: (p_component_type => l_component_type
12170: ,p_event_type_code => l_event_type_code
12171: ,p_line_definition_owner_code => l_line_definition_owner_code
12172: ,p_line_definition_code => l_line_definition_code
12178: ,p_event_class_code => l_event_class_code);
12179: --
12180: -- set accounting class
12181: --
12182: xla_ae_lines_pkg.SetAcctClass(
12183: p_accounting_class_code => 'CHARGES'
12184: , p_ae_header_id => l_ae_header_id
12185: );
12186:
12186:
12187: --
12188: -- set rounding class
12189: --
12190: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12191: 'RECEIVABLE';
12192:
12193: --
12194: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12190: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12191: 'RECEIVABLE';
12192:
12193: --
12194: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12195: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12196: --
12197: -- bulk performance
12198: --
12191: 'RECEIVABLE';
12192:
12193: --
12194: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12195: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12196: --
12197: -- bulk performance
12198: --
12199: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12195: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12196: --
12197: -- bulk performance
12198: --
12199: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12200:
12201: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12202: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12203:
12197: -- bulk performance
12198: --
12199: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12200:
12201: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12202: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12203:
12204: -- 4955764
12205: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12201: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12202: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12203:
12204: -- 4955764
12205: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12206: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
12207:
12208: -- 4458381 Public Sector Enh
12209:
12239: l_rec_acct_attrs.array_char_value(12) := p_source_32;
12240: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
12241: l_rec_acct_attrs.array_num_value(13) := p_source_52;
12242:
12243: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12244: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12245:
12246: ---------------------------------------------------------------------------------------------------------------
12247: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12240: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
12241: l_rec_acct_attrs.array_num_value(13) := p_source_52;
12242:
12243: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12244: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12245:
12246: ---------------------------------------------------------------------------------------------------------------
12247: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12248: ---------------------------------------------------------------------------------------------------------------
12243: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12244: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12245:
12246: ---------------------------------------------------------------------------------------------------------------
12247: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12248: ---------------------------------------------------------------------------------------------------------------
12249: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12250:
12251: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12245:
12246: ---------------------------------------------------------------------------------------------------------------
12247: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12248: ---------------------------------------------------------------------------------------------------------------
12249: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12250:
12251: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12252: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12253:
12247: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12248: ---------------------------------------------------------------------------------------------------------------
12249: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12250:
12251: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12252: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12253:
12254: IF xla_accounting_cache_pkg.GetValueChar
12255: (p_source_code => 'LEDGER_CATEGORY_CODE'
12248: ---------------------------------------------------------------------------------------------------------------
12249: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12250:
12251: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12252: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12253:
12254: IF xla_accounting_cache_pkg.GetValueChar
12255: (p_source_code => 'LEDGER_CATEGORY_CODE'
12256: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
12259: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
12260: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
12261: )
12262: THEN
12263: xla_ae_lines_pkg.BflowUpgEntry
12264: (p_business_method_code => l_bflow_method_code
12265: ,p_business_class_code => l_bflow_class_code
12266: ,p_balance_type => l_balance_type_code);
12267: ELSE
12299: , x_value_type_code => l_adr_value_type_code
12300: , p_side => 'NA'
12301: );
12302:
12303: xla_ae_lines_pkg.set_ccid(
12304: p_code_combination_id => l_ccid
12305: , p_value_type_code => l_adr_value_type_code
12306: , p_transaction_coa_id => l_adr_transaction_coa_id
12307: , p_accounting_coa_id => l_adr_accounting_coa_id
12335: xla_accounting_err_pkg.build_message
12336: (p_appli_s_name => 'XLA'
12337: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
12338: ,p_token_1 => 'LINE_NUMBER'
12339: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
12340: ,p_token_2 => 'LINE_TYPE_NAME'
12341: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
12342: l_component_type
12343: ,l_component_code
12371: --
12372: --
12373: ------------------------------------------------------------------------------------------------
12374: -- 4219869 Business Flow
12375: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12376: -- Prior Entry. Currently, the following code is always generated.
12377: ------------------------------------------------------------------------------------------------
12378: XLA_AE_LINES_PKG.ValidateCurrentLine;
12379:
12374: -- 4219869 Business Flow
12375: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12376: -- Prior Entry. Currently, the following code is always generated.
12377: ------------------------------------------------------------------------------------------------
12378: XLA_AE_LINES_PKG.ValidateCurrentLine;
12379:
12380: ------------------------------------------------------------------------------------
12381: -- 4219869 Business Flow
12382: -- Populated credit and debit amounts -- Need to generate this within IF
12380: ------------------------------------------------------------------------------------
12381: -- 4219869 Business Flow
12382: -- Populated credit and debit amounts -- Need to generate this within IF
12383: ------------------------------------------------------------------------------------
12384: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12385:
12386: ----------------------------------------------------------------------------------
12387: -- 4219869 Business Flow
12388: -- Update journal entry status -- Need to generate this within IF
12412: -- To allow MPA report to determine if it should generate report process
12413: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12414: ------------------------------------------------------------------------------------------
12415:
12416: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12417: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12418: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12419: -- call ADRs
12420: -- Bug 4922099
12413: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12414: ------------------------------------------------------------------------------------------
12415:
12416: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12417: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12418: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12419: -- call ADRs
12420: -- Bug 4922099
12421: --
12437: , x_value_type_code => l_adr_value_type_code
12438: , p_side => 'NA'
12439: );
12440:
12441: xla_ae_lines_pkg.set_ccid(
12442: p_code_combination_id => l_ccid
12443: , p_value_type_code => l_adr_value_type_code
12444: , p_transaction_coa_id => l_adr_transaction_coa_id
12445: , p_accounting_coa_id => l_adr_accounting_coa_id
12460:
12461: --
12462: -- Update the line information that should be overwritten
12463: --
12464: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12465: p_header_num => 1);
12466: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12467:
12468: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12462: -- Update the line information that should be overwritten
12463: --
12464: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12465: p_header_num => 1);
12466: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12467:
12468: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12469:
12470: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12464: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12465: p_header_num => 1);
12466: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12467:
12468: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12469:
12470: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12471: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12472: END IF;
12467:
12468: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12469:
12470: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12471: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12472: END IF;
12473:
12474: --
12475: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12474: --
12475: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12476: --
12477: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
12478: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
12479: ELSE
12480: ---------------------------------------------------------------------------------------------------
12481: -- 4262811a Switch Sign
12482: ---------------------------------------------------------------------------------------------------
12479: ELSE
12480: ---------------------------------------------------------------------------------------------------
12481: -- 4262811a Switch Sign
12482: ---------------------------------------------------------------------------------------------------
12483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12480: ---------------------------------------------------------------------------------------------------
12481: -- 4262811a Switch Sign
12482: ---------------------------------------------------------------------------------------------------
12483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12488: -- 5132302
12481: -- 4262811a Switch Sign
12482: ---------------------------------------------------------------------------------------------------
12483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12488: -- 5132302
12489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12482: ---------------------------------------------------------------------------------------------------
12483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12488: -- 5132302
12489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12490: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12483: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12484: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12488: -- 5132302
12489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12490: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12491:
12485: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12488: -- 5132302
12489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12490: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12491:
12492: END IF;
12493:
12486: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12487: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12488: -- 5132302
12489: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12490: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12491:
12492: END IF;
12493:
12494: -- 4955764
12491:
12492: END IF;
12493:
12494: -- 4955764
12495: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12496: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12497:
12498:
12499: XLA_AE_LINES_PKG.ValidateCurrentLine;
12495: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12496: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12497:
12498:
12499: XLA_AE_LINES_PKG.ValidateCurrentLine;
12500: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12501:
12502: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12503: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12496: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12497:
12498:
12499: XLA_AE_LINES_PKG.ValidateCurrentLine;
12500: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12501:
12502: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12503: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12504: ,p_balance_type_code => l_balance_type_code);
12639: --
12640: -- bulk performance
12641: --
12642: l_balance_type_code VARCHAR2(1);
12643: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
12644: l_log_module VARCHAR2(240);
12645:
12646: --
12647: -- Upgrade strategy
12707: ') = 'FREIGHT'
12708: THEN
12709:
12710: --
12711: XLA_AE_LINES_PKG.SetNewLine;
12712:
12713: p_balance_type_code := l_balance_type_code;
12714: -- set the flag so later we will know whether the gain loss line needs to be created
12715:
12719:
12720: --
12721: -- bulk performance
12722: --
12723: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
12724: p_header_num => 0); -- 4262811
12725: --
12726: -- set accounting line options
12727: --
12724: p_header_num => 0); -- 4262811
12725: --
12726: -- set accounting line options
12727: --
12728: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
12729: p_natural_side_code => 'C'
12730: , p_gain_or_loss_flag => 'N'
12731: , p_gl_transfer_mode_code => 'S'
12732: , p_acct_entry_type_code => 'A'
12738: --
12739: --
12740: -- set accounting line type info
12741: --
12742: xla_ae_lines_pkg.SetAcctLineType
12743: (p_component_type => l_component_type
12744: ,p_event_type_code => l_event_type_code
12745: ,p_line_definition_owner_code => l_line_definition_owner_code
12746: ,p_line_definition_code => l_line_definition_code
12752: ,p_event_class_code => l_event_class_code);
12753: --
12754: -- set accounting class
12755: --
12756: xla_ae_lines_pkg.SetAcctClass(
12757: p_accounting_class_code => 'FREIGHT'
12758: , p_ae_header_id => l_ae_header_id
12759: );
12760:
12760:
12761: --
12762: -- set rounding class
12763: --
12764: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12765: 'RECEIVABLE';
12766:
12767: --
12768: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12764: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12765: 'RECEIVABLE';
12766:
12767: --
12768: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12769: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12770: --
12771: -- bulk performance
12772: --
12765: 'RECEIVABLE';
12766:
12767: --
12768: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12769: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12770: --
12771: -- bulk performance
12772: --
12773: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12769: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12770: --
12771: -- bulk performance
12772: --
12773: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12774:
12775: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12776: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12777:
12771: -- bulk performance
12772: --
12773: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12774:
12775: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12776: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12777:
12778: -- 4955764
12779: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12775: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12776: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12777:
12778: -- 4955764
12779: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12780: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
12781:
12782: -- 4458381 Public Sector Enh
12783:
12813: l_rec_acct_attrs.array_char_value(12) := p_source_32;
12814: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
12815: l_rec_acct_attrs.array_num_value(13) := p_source_52;
12816:
12817: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12818: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12819:
12820: ---------------------------------------------------------------------------------------------------------------
12821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12814: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
12815: l_rec_acct_attrs.array_num_value(13) := p_source_52;
12816:
12817: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12818: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12819:
12820: ---------------------------------------------------------------------------------------------------------------
12821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12822: ---------------------------------------------------------------------------------------------------------------
12817: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12818: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12819:
12820: ---------------------------------------------------------------------------------------------------------------
12821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12822: ---------------------------------------------------------------------------------------------------------------
12823: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12824:
12825: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12819:
12820: ---------------------------------------------------------------------------------------------------------------
12821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12822: ---------------------------------------------------------------------------------------------------------------
12823: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12824:
12825: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12826: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12827:
12821: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12822: ---------------------------------------------------------------------------------------------------------------
12823: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12824:
12825: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12826: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12827:
12828: IF xla_accounting_cache_pkg.GetValueChar
12829: (p_source_code => 'LEDGER_CATEGORY_CODE'
12822: ---------------------------------------------------------------------------------------------------------------
12823: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12824:
12825: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12826: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12827:
12828: IF xla_accounting_cache_pkg.GetValueChar
12829: (p_source_code => 'LEDGER_CATEGORY_CODE'
12830: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
12833: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
12834: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
12835: )
12836: THEN
12837: xla_ae_lines_pkg.BflowUpgEntry
12838: (p_business_method_code => l_bflow_method_code
12839: ,p_business_class_code => l_bflow_class_code
12840: ,p_balance_type => l_balance_type_code);
12841: ELSE
12873: , x_value_type_code => l_adr_value_type_code
12874: , p_side => 'NA'
12875: );
12876:
12877: xla_ae_lines_pkg.set_ccid(
12878: p_code_combination_id => l_ccid
12879: , p_value_type_code => l_adr_value_type_code
12880: , p_transaction_coa_id => l_adr_transaction_coa_id
12881: , p_accounting_coa_id => l_adr_accounting_coa_id
12909: xla_accounting_err_pkg.build_message
12910: (p_appli_s_name => 'XLA'
12911: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
12912: ,p_token_1 => 'LINE_NUMBER'
12913: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
12914: ,p_token_2 => 'LINE_TYPE_NAME'
12915: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
12916: l_component_type
12917: ,l_component_code
12945: --
12946: --
12947: ------------------------------------------------------------------------------------------------
12948: -- 4219869 Business Flow
12949: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12950: -- Prior Entry. Currently, the following code is always generated.
12951: ------------------------------------------------------------------------------------------------
12952: XLA_AE_LINES_PKG.ValidateCurrentLine;
12953:
12948: -- 4219869 Business Flow
12949: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12950: -- Prior Entry. Currently, the following code is always generated.
12951: ------------------------------------------------------------------------------------------------
12952: XLA_AE_LINES_PKG.ValidateCurrentLine;
12953:
12954: ------------------------------------------------------------------------------------
12955: -- 4219869 Business Flow
12956: -- Populated credit and debit amounts -- Need to generate this within IF
12954: ------------------------------------------------------------------------------------
12955: -- 4219869 Business Flow
12956: -- Populated credit and debit amounts -- Need to generate this within IF
12957: ------------------------------------------------------------------------------------
12958: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12959:
12960: ----------------------------------------------------------------------------------
12961: -- 4219869 Business Flow
12962: -- Update journal entry status -- Need to generate this within IF
12986: -- To allow MPA report to determine if it should generate report process
12987: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12988: ------------------------------------------------------------------------------------------
12989:
12990: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12991: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12992: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12993: -- call ADRs
12994: -- Bug 4922099
12987: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12988: ------------------------------------------------------------------------------------------
12989:
12990: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12991: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12992: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12993: -- call ADRs
12994: -- Bug 4922099
12995: --
13011: , x_value_type_code => l_adr_value_type_code
13012: , p_side => 'NA'
13013: );
13014:
13015: xla_ae_lines_pkg.set_ccid(
13016: p_code_combination_id => l_ccid
13017: , p_value_type_code => l_adr_value_type_code
13018: , p_transaction_coa_id => l_adr_transaction_coa_id
13019: , p_accounting_coa_id => l_adr_accounting_coa_id
13034:
13035: --
13036: -- Update the line information that should be overwritten
13037: --
13038: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13039: p_header_num => 1);
13040: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13041:
13042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13036: -- Update the line information that should be overwritten
13037: --
13038: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13039: p_header_num => 1);
13040: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13041:
13042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13043:
13044: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13038: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13039: p_header_num => 1);
13040: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13041:
13042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13043:
13044: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13045: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13046: END IF;
13041:
13042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13043:
13044: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13045: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13046: END IF;
13047:
13048: --
13049: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13048: --
13049: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13050: --
13051: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
13052: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
13053: ELSE
13054: ---------------------------------------------------------------------------------------------------
13055: -- 4262811a Switch Sign
13056: ---------------------------------------------------------------------------------------------------
13053: ELSE
13054: ---------------------------------------------------------------------------------------------------
13055: -- 4262811a Switch Sign
13056: ---------------------------------------------------------------------------------------------------
13057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13054: ---------------------------------------------------------------------------------------------------
13055: -- 4262811a Switch Sign
13056: ---------------------------------------------------------------------------------------------------
13057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13062: -- 5132302
13055: -- 4262811a Switch Sign
13056: ---------------------------------------------------------------------------------------------------
13057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13062: -- 5132302
13063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13056: ---------------------------------------------------------------------------------------------------
13057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13062: -- 5132302
13063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13064: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13057: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13058: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13062: -- 5132302
13063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13064: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13065:
13059: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13062: -- 5132302
13063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13064: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13065:
13066: END IF;
13067:
13060: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13061: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13062: -- 5132302
13063: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13064: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13065:
13066: END IF;
13067:
13068: -- 4955764
13065:
13066: END IF;
13067:
13068: -- 4955764
13069: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13070: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13071:
13072:
13073: XLA_AE_LINES_PKG.ValidateCurrentLine;
13069: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13070: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13071:
13072:
13073: XLA_AE_LINES_PKG.ValidateCurrentLine;
13074: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13075:
13076: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13077: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13070: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13071:
13072:
13073: XLA_AE_LINES_PKG.ValidateCurrentLine;
13074: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13075:
13076: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13077: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13078: ,p_balance_type_code => l_balance_type_code);
13213: --
13214: -- bulk performance
13215: --
13216: l_balance_type_code VARCHAR2(1);
13217: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
13218: l_log_module VARCHAR2(240);
13219:
13220: --
13221: -- Upgrade strategy
13281: ') = 'REC'
13282: THEN
13283:
13284: --
13285: XLA_AE_LINES_PKG.SetNewLine;
13286:
13287: p_balance_type_code := l_balance_type_code;
13288: -- set the flag so later we will know whether the gain loss line needs to be created
13289:
13293:
13294: --
13295: -- bulk performance
13296: --
13297: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
13298: p_header_num => 0); -- 4262811
13299: --
13300: -- set accounting line options
13301: --
13298: p_header_num => 0); -- 4262811
13299: --
13300: -- set accounting line options
13301: --
13302: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
13303: p_natural_side_code => 'D'
13304: , p_gain_or_loss_flag => 'N'
13305: , p_gl_transfer_mode_code => 'S'
13306: , p_acct_entry_type_code => 'A'
13312: --
13313: --
13314: -- set accounting line type info
13315: --
13316: xla_ae_lines_pkg.SetAcctLineType
13317: (p_component_type => l_component_type
13318: ,p_event_type_code => l_event_type_code
13319: ,p_line_definition_owner_code => l_line_definition_owner_code
13320: ,p_line_definition_code => l_line_definition_code
13326: ,p_event_class_code => l_event_class_code);
13327: --
13328: -- set accounting class
13329: --
13330: xla_ae_lines_pkg.SetAcctClass(
13331: p_accounting_class_code => 'RECEIVABLE'
13332: , p_ae_header_id => l_ae_header_id
13333: );
13334:
13334:
13335: --
13336: -- set rounding class
13337: --
13338: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13339: 'RECEIVABLE';
13340:
13341: --
13342: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13338: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13339: 'RECEIVABLE';
13340:
13341: --
13342: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13343: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13344: --
13345: -- bulk performance
13346: --
13339: 'RECEIVABLE';
13340:
13341: --
13342: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13343: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13344: --
13345: -- bulk performance
13346: --
13347: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13343: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13344: --
13345: -- bulk performance
13346: --
13347: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13348:
13349: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13350: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13351:
13345: -- bulk performance
13346: --
13347: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13348:
13349: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13350: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13351:
13352: -- 4955764
13353: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13349: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13350: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13351:
13352: -- 4955764
13353: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13354: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
13355:
13356: -- 4458381 Public Sector Enh
13357:
13387: l_rec_acct_attrs.array_char_value(12) := p_source_32;
13388: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
13389: l_rec_acct_attrs.array_num_value(13) := p_source_52;
13390:
13391: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13392: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13393:
13394: ---------------------------------------------------------------------------------------------------------------
13395: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13388: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
13389: l_rec_acct_attrs.array_num_value(13) := p_source_52;
13390:
13391: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13392: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13393:
13394: ---------------------------------------------------------------------------------------------------------------
13395: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13396: ---------------------------------------------------------------------------------------------------------------
13391: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13392: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13393:
13394: ---------------------------------------------------------------------------------------------------------------
13395: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13396: ---------------------------------------------------------------------------------------------------------------
13397: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13398:
13399: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13393:
13394: ---------------------------------------------------------------------------------------------------------------
13395: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13396: ---------------------------------------------------------------------------------------------------------------
13397: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13398:
13399: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13400: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13401:
13395: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13396: ---------------------------------------------------------------------------------------------------------------
13397: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13398:
13399: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13400: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13401:
13402: IF xla_accounting_cache_pkg.GetValueChar
13403: (p_source_code => 'LEDGER_CATEGORY_CODE'
13396: ---------------------------------------------------------------------------------------------------------------
13397: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13398:
13399: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13400: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13401:
13402: IF xla_accounting_cache_pkg.GetValueChar
13403: (p_source_code => 'LEDGER_CATEGORY_CODE'
13404: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
13407: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
13408: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
13409: )
13410: THEN
13411: xla_ae_lines_pkg.BflowUpgEntry
13412: (p_business_method_code => l_bflow_method_code
13413: ,p_business_class_code => l_bflow_class_code
13414: ,p_balance_type => l_balance_type_code);
13415: ELSE
13447: , x_value_type_code => l_adr_value_type_code
13448: , p_side => 'NA'
13449: );
13450:
13451: xla_ae_lines_pkg.set_ccid(
13452: p_code_combination_id => l_ccid
13453: , p_value_type_code => l_adr_value_type_code
13454: , p_transaction_coa_id => l_adr_transaction_coa_id
13455: , p_accounting_coa_id => l_adr_accounting_coa_id
13483: xla_accounting_err_pkg.build_message
13484: (p_appli_s_name => 'XLA'
13485: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
13486: ,p_token_1 => 'LINE_NUMBER'
13487: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
13488: ,p_token_2 => 'LINE_TYPE_NAME'
13489: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
13490: l_component_type
13491: ,l_component_code
13519: --
13520: --
13521: ------------------------------------------------------------------------------------------------
13522: -- 4219869 Business Flow
13523: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13524: -- Prior Entry. Currently, the following code is always generated.
13525: ------------------------------------------------------------------------------------------------
13526: XLA_AE_LINES_PKG.ValidateCurrentLine;
13527:
13522: -- 4219869 Business Flow
13523: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13524: -- Prior Entry. Currently, the following code is always generated.
13525: ------------------------------------------------------------------------------------------------
13526: XLA_AE_LINES_PKG.ValidateCurrentLine;
13527:
13528: ------------------------------------------------------------------------------------
13529: -- 4219869 Business Flow
13530: -- Populated credit and debit amounts -- Need to generate this within IF
13528: ------------------------------------------------------------------------------------
13529: -- 4219869 Business Flow
13530: -- Populated credit and debit amounts -- Need to generate this within IF
13531: ------------------------------------------------------------------------------------
13532: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13533:
13534: ----------------------------------------------------------------------------------
13535: -- 4219869 Business Flow
13536: -- Update journal entry status -- Need to generate this within IF
13560: -- To allow MPA report to determine if it should generate report process
13561: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13562: ------------------------------------------------------------------------------------------
13563:
13564: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13565: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13566: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13567: -- call ADRs
13568: -- Bug 4922099
13561: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13562: ------------------------------------------------------------------------------------------
13563:
13564: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13565: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13566: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13567: -- call ADRs
13568: -- Bug 4922099
13569: --
13585: , x_value_type_code => l_adr_value_type_code
13586: , p_side => 'NA'
13587: );
13588:
13589: xla_ae_lines_pkg.set_ccid(
13590: p_code_combination_id => l_ccid
13591: , p_value_type_code => l_adr_value_type_code
13592: , p_transaction_coa_id => l_adr_transaction_coa_id
13593: , p_accounting_coa_id => l_adr_accounting_coa_id
13608:
13609: --
13610: -- Update the line information that should be overwritten
13611: --
13612: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13613: p_header_num => 1);
13614: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13615:
13616: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13610: -- Update the line information that should be overwritten
13611: --
13612: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13613: p_header_num => 1);
13614: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13615:
13616: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13617:
13618: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13612: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13613: p_header_num => 1);
13614: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13615:
13616: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13617:
13618: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13619: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13620: END IF;
13615:
13616: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13617:
13618: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13619: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13620: END IF;
13621:
13622: --
13623: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13622: --
13623: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13624: --
13625: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
13626: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
13627: ELSE
13628: ---------------------------------------------------------------------------------------------------
13629: -- 4262811a Switch Sign
13630: ---------------------------------------------------------------------------------------------------
13627: ELSE
13628: ---------------------------------------------------------------------------------------------------
13629: -- 4262811a Switch Sign
13630: ---------------------------------------------------------------------------------------------------
13631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13628: ---------------------------------------------------------------------------------------------------
13629: -- 4262811a Switch Sign
13630: ---------------------------------------------------------------------------------------------------
13631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13636: -- 5132302
13629: -- 4262811a Switch Sign
13630: ---------------------------------------------------------------------------------------------------
13631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13636: -- 5132302
13637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13630: ---------------------------------------------------------------------------------------------------
13631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13636: -- 5132302
13637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13631: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13632: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13636: -- 5132302
13637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13639:
13633: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13636: -- 5132302
13637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13639:
13640: END IF;
13641:
13634: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13635: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13636: -- 5132302
13637: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13638: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13639:
13640: END IF;
13641:
13642: -- 4955764
13639:
13640: END IF;
13641:
13642: -- 4955764
13643: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13644: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13645:
13646:
13647: XLA_AE_LINES_PKG.ValidateCurrentLine;
13643: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13644: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13645:
13646:
13647: XLA_AE_LINES_PKG.ValidateCurrentLine;
13648: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13649:
13650: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13651: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13644: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13645:
13646:
13647: XLA_AE_LINES_PKG.ValidateCurrentLine;
13648: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13649:
13650: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13651: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13652: ,p_balance_type_code => l_balance_type_code);
13787: --
13788: -- bulk performance
13789: --
13790: l_balance_type_code VARCHAR2(1);
13791: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
13792: l_log_module VARCHAR2(240);
13793:
13794: --
13795: -- Upgrade strategy
13855: ') = 'REV'
13856: THEN
13857:
13858: --
13859: XLA_AE_LINES_PKG.SetNewLine;
13860:
13861: p_balance_type_code := l_balance_type_code;
13862: -- set the flag so later we will know whether the gain loss line needs to be created
13863:
13867:
13868: --
13869: -- bulk performance
13870: --
13871: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
13872: p_header_num => 0); -- 4262811
13873: --
13874: -- set accounting line options
13875: --
13872: p_header_num => 0); -- 4262811
13873: --
13874: -- set accounting line options
13875: --
13876: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
13877: p_natural_side_code => 'C'
13878: , p_gain_or_loss_flag => 'N'
13879: , p_gl_transfer_mode_code => 'S'
13880: , p_acct_entry_type_code => 'A'
13886: --
13887: --
13888: -- set accounting line type info
13889: --
13890: xla_ae_lines_pkg.SetAcctLineType
13891: (p_component_type => l_component_type
13892: ,p_event_type_code => l_event_type_code
13893: ,p_line_definition_owner_code => l_line_definition_owner_code
13894: ,p_line_definition_code => l_line_definition_code
13900: ,p_event_class_code => l_event_class_code);
13901: --
13902: -- set accounting class
13903: --
13904: xla_ae_lines_pkg.SetAcctClass(
13905: p_accounting_class_code => 'REVENUE'
13906: , p_ae_header_id => l_ae_header_id
13907: );
13908:
13908:
13909: --
13910: -- set rounding class
13911: --
13912: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13913: 'RECEIVABLE';
13914:
13915: --
13916: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13912: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13913: 'RECEIVABLE';
13914:
13915: --
13916: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13917: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13918: --
13919: -- bulk performance
13920: --
13913: 'RECEIVABLE';
13914:
13915: --
13916: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13917: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13918: --
13919: -- bulk performance
13920: --
13921: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13917: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13918: --
13919: -- bulk performance
13920: --
13921: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13922:
13923: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13924: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13925:
13919: -- bulk performance
13920: --
13921: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13922:
13923: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13924: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13925:
13926: -- 4955764
13927: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13923: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13924: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13925:
13926: -- 4955764
13927: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13928: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
13929:
13930: -- 4458381 Public Sector Enh
13931:
13961: l_rec_acct_attrs.array_char_value(12) := p_source_32;
13962: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
13963: l_rec_acct_attrs.array_num_value(13) := p_source_52;
13964:
13965: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13966: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13967:
13968: ---------------------------------------------------------------------------------------------------------------
13969: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13962: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
13963: l_rec_acct_attrs.array_num_value(13) := p_source_52;
13964:
13965: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13966: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13967:
13968: ---------------------------------------------------------------------------------------------------------------
13969: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13970: ---------------------------------------------------------------------------------------------------------------
13965: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13966: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13967:
13968: ---------------------------------------------------------------------------------------------------------------
13969: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13970: ---------------------------------------------------------------------------------------------------------------
13971: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13972:
13973: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13967:
13968: ---------------------------------------------------------------------------------------------------------------
13969: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13970: ---------------------------------------------------------------------------------------------------------------
13971: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13972:
13973: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13974: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13975:
13969: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13970: ---------------------------------------------------------------------------------------------------------------
13971: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13972:
13973: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13974: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13975:
13976: IF xla_accounting_cache_pkg.GetValueChar
13977: (p_source_code => 'LEDGER_CATEGORY_CODE'
13970: ---------------------------------------------------------------------------------------------------------------
13971: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13972:
13973: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13974: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13975:
13976: IF xla_accounting_cache_pkg.GetValueChar
13977: (p_source_code => 'LEDGER_CATEGORY_CODE'
13978: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
13981: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
13982: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
13983: )
13984: THEN
13985: xla_ae_lines_pkg.BflowUpgEntry
13986: (p_business_method_code => l_bflow_method_code
13987: ,p_business_class_code => l_bflow_class_code
13988: ,p_balance_type => l_balance_type_code);
13989: ELSE
14021: , x_value_type_code => l_adr_value_type_code
14022: , p_side => 'NA'
14023: );
14024:
14025: xla_ae_lines_pkg.set_ccid(
14026: p_code_combination_id => l_ccid
14027: , p_value_type_code => l_adr_value_type_code
14028: , p_transaction_coa_id => l_adr_transaction_coa_id
14029: , p_accounting_coa_id => l_adr_accounting_coa_id
14057: xla_accounting_err_pkg.build_message
14058: (p_appli_s_name => 'XLA'
14059: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
14060: ,p_token_1 => 'LINE_NUMBER'
14061: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
14062: ,p_token_2 => 'LINE_TYPE_NAME'
14063: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
14064: l_component_type
14065: ,l_component_code
14093: --
14094: --
14095: ------------------------------------------------------------------------------------------------
14096: -- 4219869 Business Flow
14097: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14098: -- Prior Entry. Currently, the following code is always generated.
14099: ------------------------------------------------------------------------------------------------
14100: XLA_AE_LINES_PKG.ValidateCurrentLine;
14101:
14096: -- 4219869 Business Flow
14097: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14098: -- Prior Entry. Currently, the following code is always generated.
14099: ------------------------------------------------------------------------------------------------
14100: XLA_AE_LINES_PKG.ValidateCurrentLine;
14101:
14102: ------------------------------------------------------------------------------------
14103: -- 4219869 Business Flow
14104: -- Populated credit and debit amounts -- Need to generate this within IF
14102: ------------------------------------------------------------------------------------
14103: -- 4219869 Business Flow
14104: -- Populated credit and debit amounts -- Need to generate this within IF
14105: ------------------------------------------------------------------------------------
14106: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14107:
14108: ----------------------------------------------------------------------------------
14109: -- 4219869 Business Flow
14110: -- Update journal entry status -- Need to generate this within IF
14134: -- To allow MPA report to determine if it should generate report process
14135: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14136: ------------------------------------------------------------------------------------------
14137:
14138: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14139: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14140: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14141: -- call ADRs
14142: -- Bug 4922099
14135: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14136: ------------------------------------------------------------------------------------------
14137:
14138: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14139: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14140: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14141: -- call ADRs
14142: -- Bug 4922099
14143: --
14159: , x_value_type_code => l_adr_value_type_code
14160: , p_side => 'NA'
14161: );
14162:
14163: xla_ae_lines_pkg.set_ccid(
14164: p_code_combination_id => l_ccid
14165: , p_value_type_code => l_adr_value_type_code
14166: , p_transaction_coa_id => l_adr_transaction_coa_id
14167: , p_accounting_coa_id => l_adr_accounting_coa_id
14182:
14183: --
14184: -- Update the line information that should be overwritten
14185: --
14186: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14187: p_header_num => 1);
14188: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14189:
14190: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14184: -- Update the line information that should be overwritten
14185: --
14186: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14187: p_header_num => 1);
14188: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14189:
14190: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14191:
14192: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14186: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14187: p_header_num => 1);
14188: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14189:
14190: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14191:
14192: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14193: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14194: END IF;
14189:
14190: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14191:
14192: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14193: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14194: END IF;
14195:
14196: --
14197: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14196: --
14197: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14198: --
14199: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
14200: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
14201: ELSE
14202: ---------------------------------------------------------------------------------------------------
14203: -- 4262811a Switch Sign
14204: ---------------------------------------------------------------------------------------------------
14201: ELSE
14202: ---------------------------------------------------------------------------------------------------
14203: -- 4262811a Switch Sign
14204: ---------------------------------------------------------------------------------------------------
14205: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14208: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14202: ---------------------------------------------------------------------------------------------------
14203: -- 4262811a Switch Sign
14204: ---------------------------------------------------------------------------------------------------
14205: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14208: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14210: -- 5132302
14203: -- 4262811a Switch Sign
14204: ---------------------------------------------------------------------------------------------------
14205: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14208: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14210: -- 5132302
14211: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14204: ---------------------------------------------------------------------------------------------------
14205: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14208: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14210: -- 5132302
14211: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14212: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14205: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14208: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14210: -- 5132302
14211: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14212: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14213:
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14208: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14210: -- 5132302
14211: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14212: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14213:
14214: END IF;
14215:
14208: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14210: -- 5132302
14211: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14212: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14213:
14214: END IF;
14215:
14216: -- 4955764
14213:
14214: END IF;
14215:
14216: -- 4955764
14217: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14218: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14219:
14220:
14221: XLA_AE_LINES_PKG.ValidateCurrentLine;
14217: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14218: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14219:
14220:
14221: XLA_AE_LINES_PKG.ValidateCurrentLine;
14222: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14223:
14224: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14225: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14218: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14219:
14220:
14221: XLA_AE_LINES_PKG.ValidateCurrentLine;
14222: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14223:
14224: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14225: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14226: ,p_balance_type_code => l_balance_type_code);
14361: --
14362: -- bulk performance
14363: --
14364: l_balance_type_code VARCHAR2(1);
14365: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
14366: l_log_module VARCHAR2(240);
14367:
14368: --
14369: -- Upgrade strategy
14429: ') = 'SUSPENSE'
14430: THEN
14431:
14432: --
14433: XLA_AE_LINES_PKG.SetNewLine;
14434:
14435: p_balance_type_code := l_balance_type_code;
14436: -- set the flag so later we will know whether the gain loss line needs to be created
14437:
14441:
14442: --
14443: -- bulk performance
14444: --
14445: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
14446: p_header_num => 0); -- 4262811
14447: --
14448: -- set accounting line options
14449: --
14446: p_header_num => 0); -- 4262811
14447: --
14448: -- set accounting line options
14449: --
14450: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
14451: p_natural_side_code => 'C'
14452: , p_gain_or_loss_flag => 'N'
14453: , p_gl_transfer_mode_code => 'S'
14454: , p_acct_entry_type_code => 'A'
14460: --
14461: --
14462: -- set accounting line type info
14463: --
14464: xla_ae_lines_pkg.SetAcctLineType
14465: (p_component_type => l_component_type
14466: ,p_event_type_code => l_event_type_code
14467: ,p_line_definition_owner_code => l_line_definition_owner_code
14468: ,p_line_definition_code => l_line_definition_code
14474: ,p_event_class_code => l_event_class_code);
14475: --
14476: -- set accounting class
14477: --
14478: xla_ae_lines_pkg.SetAcctClass(
14479: p_accounting_class_code => 'SUSPENSE'
14480: , p_ae_header_id => l_ae_header_id
14481: );
14482:
14482:
14483: --
14484: -- set rounding class
14485: --
14486: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14487: 'RECEIVABLE';
14488:
14489: --
14490: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14486: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14487: 'RECEIVABLE';
14488:
14489: --
14490: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14491: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14492: --
14493: -- bulk performance
14494: --
14487: 'RECEIVABLE';
14488:
14489: --
14490: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14491: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14492: --
14493: -- bulk performance
14494: --
14495: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14491: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14492: --
14493: -- bulk performance
14494: --
14495: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14496:
14497: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14498: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14499:
14493: -- bulk performance
14494: --
14495: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14496:
14497: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14498: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14499:
14500: -- 4955764
14501: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14497: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14498: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14499:
14500: -- 4955764
14501: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14502: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
14503:
14504: -- 4458381 Public Sector Enh
14505:
14535: l_rec_acct_attrs.array_char_value(12) := p_source_32;
14536: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
14537: l_rec_acct_attrs.array_num_value(13) := p_source_52;
14538:
14539: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14540: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14541:
14542: ---------------------------------------------------------------------------------------------------------------
14543: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14536: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
14537: l_rec_acct_attrs.array_num_value(13) := p_source_52;
14538:
14539: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14540: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14541:
14542: ---------------------------------------------------------------------------------------------------------------
14543: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14544: ---------------------------------------------------------------------------------------------------------------
14539: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14540: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14541:
14542: ---------------------------------------------------------------------------------------------------------------
14543: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14544: ---------------------------------------------------------------------------------------------------------------
14545: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14546:
14547: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14541:
14542: ---------------------------------------------------------------------------------------------------------------
14543: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14544: ---------------------------------------------------------------------------------------------------------------
14545: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14546:
14547: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14548: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14549:
14543: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14544: ---------------------------------------------------------------------------------------------------------------
14545: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14546:
14547: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14548: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14549:
14550: IF xla_accounting_cache_pkg.GetValueChar
14551: (p_source_code => 'LEDGER_CATEGORY_CODE'
14544: ---------------------------------------------------------------------------------------------------------------
14545: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14546:
14547: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14548: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14549:
14550: IF xla_accounting_cache_pkg.GetValueChar
14551: (p_source_code => 'LEDGER_CATEGORY_CODE'
14552: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
14555: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
14556: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
14557: )
14558: THEN
14559: xla_ae_lines_pkg.BflowUpgEntry
14560: (p_business_method_code => l_bflow_method_code
14561: ,p_business_class_code => l_bflow_class_code
14562: ,p_balance_type => l_balance_type_code);
14563: ELSE
14595: , x_value_type_code => l_adr_value_type_code
14596: , p_side => 'NA'
14597: );
14598:
14599: xla_ae_lines_pkg.set_ccid(
14600: p_code_combination_id => l_ccid
14601: , p_value_type_code => l_adr_value_type_code
14602: , p_transaction_coa_id => l_adr_transaction_coa_id
14603: , p_accounting_coa_id => l_adr_accounting_coa_id
14631: xla_accounting_err_pkg.build_message
14632: (p_appli_s_name => 'XLA'
14633: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
14634: ,p_token_1 => 'LINE_NUMBER'
14635: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
14636: ,p_token_2 => 'LINE_TYPE_NAME'
14637: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
14638: l_component_type
14639: ,l_component_code
14667: --
14668: --
14669: ------------------------------------------------------------------------------------------------
14670: -- 4219869 Business Flow
14671: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14672: -- Prior Entry. Currently, the following code is always generated.
14673: ------------------------------------------------------------------------------------------------
14674: XLA_AE_LINES_PKG.ValidateCurrentLine;
14675:
14670: -- 4219869 Business Flow
14671: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14672: -- Prior Entry. Currently, the following code is always generated.
14673: ------------------------------------------------------------------------------------------------
14674: XLA_AE_LINES_PKG.ValidateCurrentLine;
14675:
14676: ------------------------------------------------------------------------------------
14677: -- 4219869 Business Flow
14678: -- Populated credit and debit amounts -- Need to generate this within IF
14676: ------------------------------------------------------------------------------------
14677: -- 4219869 Business Flow
14678: -- Populated credit and debit amounts -- Need to generate this within IF
14679: ------------------------------------------------------------------------------------
14680: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14681:
14682: ----------------------------------------------------------------------------------
14683: -- 4219869 Business Flow
14684: -- Update journal entry status -- Need to generate this within IF
14708: -- To allow MPA report to determine if it should generate report process
14709: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14710: ------------------------------------------------------------------------------------------
14711:
14712: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14713: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14714: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14715: -- call ADRs
14716: -- Bug 4922099
14709: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14710: ------------------------------------------------------------------------------------------
14711:
14712: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14713: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14714: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14715: -- call ADRs
14716: -- Bug 4922099
14717: --
14733: , x_value_type_code => l_adr_value_type_code
14734: , p_side => 'NA'
14735: );
14736:
14737: xla_ae_lines_pkg.set_ccid(
14738: p_code_combination_id => l_ccid
14739: , p_value_type_code => l_adr_value_type_code
14740: , p_transaction_coa_id => l_adr_transaction_coa_id
14741: , p_accounting_coa_id => l_adr_accounting_coa_id
14756:
14757: --
14758: -- Update the line information that should be overwritten
14759: --
14760: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14761: p_header_num => 1);
14762: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14763:
14764: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14758: -- Update the line information that should be overwritten
14759: --
14760: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14761: p_header_num => 1);
14762: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14763:
14764: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14765:
14766: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14760: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14761: p_header_num => 1);
14762: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14763:
14764: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14765:
14766: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14767: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14768: END IF;
14763:
14764: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14765:
14766: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14767: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14768: END IF;
14769:
14770: --
14771: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14770: --
14771: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14772: --
14773: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
14774: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
14775: ELSE
14776: ---------------------------------------------------------------------------------------------------
14777: -- 4262811a Switch Sign
14778: ---------------------------------------------------------------------------------------------------
14775: ELSE
14776: ---------------------------------------------------------------------------------------------------
14777: -- 4262811a Switch Sign
14778: ---------------------------------------------------------------------------------------------------
14779: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14780: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14781: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14782: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14776: ---------------------------------------------------------------------------------------------------
14777: -- 4262811a Switch Sign
14778: ---------------------------------------------------------------------------------------------------
14779: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14780: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14781: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14782: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14784: -- 5132302
14777: -- 4262811a Switch Sign
14778: ---------------------------------------------------------------------------------------------------
14779: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14780: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14781: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14782: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14784: -- 5132302
14785: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14778: ---------------------------------------------------------------------------------------------------
14779: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14780: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14781: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14782: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14784: -- 5132302
14785: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14786: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14779: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14780: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14781: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14782: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14784: -- 5132302
14785: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14786: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14787:
14781: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14782: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14784: -- 5132302
14785: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14786: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14787:
14788: END IF;
14789:
14782: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14784: -- 5132302
14785: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14786: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14787:
14788: END IF;
14789:
14790: -- 4955764
14787:
14788: END IF;
14789:
14790: -- 4955764
14791: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14792: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14793:
14794:
14795: XLA_AE_LINES_PKG.ValidateCurrentLine;
14791: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14792: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14793:
14794:
14795: XLA_AE_LINES_PKG.ValidateCurrentLine;
14796: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14797:
14798: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14799: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14792: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14793:
14794:
14795: XLA_AE_LINES_PKG.ValidateCurrentLine;
14796: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14797:
14798: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14799: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14800: ,p_balance_type_code => l_balance_type_code);
14935: --
14936: -- bulk performance
14937: --
14938: l_balance_type_code VARCHAR2(1);
14939: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
14940: l_log_module VARCHAR2(240);
14941:
14942: --
14943: -- Upgrade strategy
15003: ') = 'TAX'
15004: THEN
15005:
15006: --
15007: XLA_AE_LINES_PKG.SetNewLine;
15008:
15009: p_balance_type_code := l_balance_type_code;
15010: -- set the flag so later we will know whether the gain loss line needs to be created
15011:
15015:
15016: --
15017: -- bulk performance
15018: --
15019: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
15020: p_header_num => 0); -- 4262811
15021: --
15022: -- set accounting line options
15023: --
15020: p_header_num => 0); -- 4262811
15021: --
15022: -- set accounting line options
15023: --
15024: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
15025: p_natural_side_code => 'C'
15026: , p_gain_or_loss_flag => 'N'
15027: , p_gl_transfer_mode_code => 'S'
15028: , p_acct_entry_type_code => 'A'
15034: --
15035: --
15036: -- set accounting line type info
15037: --
15038: xla_ae_lines_pkg.SetAcctLineType
15039: (p_component_type => l_component_type
15040: ,p_event_type_code => l_event_type_code
15041: ,p_line_definition_owner_code => l_line_definition_owner_code
15042: ,p_line_definition_code => l_line_definition_code
15048: ,p_event_class_code => l_event_class_code);
15049: --
15050: -- set accounting class
15051: --
15052: xla_ae_lines_pkg.SetAcctClass(
15053: p_accounting_class_code => 'TAX'
15054: , p_ae_header_id => l_ae_header_id
15055: );
15056:
15056:
15057: --
15058: -- set rounding class
15059: --
15060: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15061: 'RECEIVABLE';
15062:
15063: --
15064: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15060: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15061: 'RECEIVABLE';
15062:
15063: --
15064: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15065: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15066: --
15067: -- bulk performance
15068: --
15061: 'RECEIVABLE';
15062:
15063: --
15064: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15065: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15066: --
15067: -- bulk performance
15068: --
15069: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15065: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15066: --
15067: -- bulk performance
15068: --
15069: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15070:
15071: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15072: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15073:
15067: -- bulk performance
15068: --
15069: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15070:
15071: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15072: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15073:
15074: -- 4955764
15075: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15071: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15072: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15073:
15074: -- 4955764
15075: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15076: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
15077:
15078: -- 4458381 Public Sector Enh
15079:
15109: l_rec_acct_attrs.array_char_value(12) := p_source_32;
15110: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
15111: l_rec_acct_attrs.array_num_value(13) := p_source_52;
15112:
15113: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15114: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15115:
15116: ---------------------------------------------------------------------------------------------------------------
15117: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15110: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
15111: l_rec_acct_attrs.array_num_value(13) := p_source_52;
15112:
15113: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15114: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15115:
15116: ---------------------------------------------------------------------------------------------------------------
15117: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15118: ---------------------------------------------------------------------------------------------------------------
15113: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15114: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15115:
15116: ---------------------------------------------------------------------------------------------------------------
15117: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15118: ---------------------------------------------------------------------------------------------------------------
15119: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15120:
15121: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15115:
15116: ---------------------------------------------------------------------------------------------------------------
15117: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15118: ---------------------------------------------------------------------------------------------------------------
15119: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15120:
15121: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15122: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15123:
15117: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15118: ---------------------------------------------------------------------------------------------------------------
15119: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15120:
15121: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15122: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15123:
15124: IF xla_accounting_cache_pkg.GetValueChar
15125: (p_source_code => 'LEDGER_CATEGORY_CODE'
15118: ---------------------------------------------------------------------------------------------------------------
15119: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15120:
15121: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15122: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15123:
15124: IF xla_accounting_cache_pkg.GetValueChar
15125: (p_source_code => 'LEDGER_CATEGORY_CODE'
15126: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
15129: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
15130: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
15131: )
15132: THEN
15133: xla_ae_lines_pkg.BflowUpgEntry
15134: (p_business_method_code => l_bflow_method_code
15135: ,p_business_class_code => l_bflow_class_code
15136: ,p_balance_type => l_balance_type_code);
15137: ELSE
15169: , x_value_type_code => l_adr_value_type_code
15170: , p_side => 'NA'
15171: );
15172:
15173: xla_ae_lines_pkg.set_ccid(
15174: p_code_combination_id => l_ccid
15175: , p_value_type_code => l_adr_value_type_code
15176: , p_transaction_coa_id => l_adr_transaction_coa_id
15177: , p_accounting_coa_id => l_adr_accounting_coa_id
15205: xla_accounting_err_pkg.build_message
15206: (p_appli_s_name => 'XLA'
15207: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
15208: ,p_token_1 => 'LINE_NUMBER'
15209: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
15210: ,p_token_2 => 'LINE_TYPE_NAME'
15211: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
15212: l_component_type
15213: ,l_component_code
15241: --
15242: --
15243: ------------------------------------------------------------------------------------------------
15244: -- 4219869 Business Flow
15245: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15246: -- Prior Entry. Currently, the following code is always generated.
15247: ------------------------------------------------------------------------------------------------
15248: XLA_AE_LINES_PKG.ValidateCurrentLine;
15249:
15244: -- 4219869 Business Flow
15245: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15246: -- Prior Entry. Currently, the following code is always generated.
15247: ------------------------------------------------------------------------------------------------
15248: XLA_AE_LINES_PKG.ValidateCurrentLine;
15249:
15250: ------------------------------------------------------------------------------------
15251: -- 4219869 Business Flow
15252: -- Populated credit and debit amounts -- Need to generate this within IF
15250: ------------------------------------------------------------------------------------
15251: -- 4219869 Business Flow
15252: -- Populated credit and debit amounts -- Need to generate this within IF
15253: ------------------------------------------------------------------------------------
15254: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15255:
15256: ----------------------------------------------------------------------------------
15257: -- 4219869 Business Flow
15258: -- Update journal entry status -- Need to generate this within IF
15282: -- To allow MPA report to determine if it should generate report process
15283: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15284: ------------------------------------------------------------------------------------------
15285:
15286: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15287: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15288: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15289: -- call ADRs
15290: -- Bug 4922099
15283: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15284: ------------------------------------------------------------------------------------------
15285:
15286: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15287: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15288: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15289: -- call ADRs
15290: -- Bug 4922099
15291: --
15307: , x_value_type_code => l_adr_value_type_code
15308: , p_side => 'NA'
15309: );
15310:
15311: xla_ae_lines_pkg.set_ccid(
15312: p_code_combination_id => l_ccid
15313: , p_value_type_code => l_adr_value_type_code
15314: , p_transaction_coa_id => l_adr_transaction_coa_id
15315: , p_accounting_coa_id => l_adr_accounting_coa_id
15330:
15331: --
15332: -- Update the line information that should be overwritten
15333: --
15334: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15335: p_header_num => 1);
15336: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15337:
15338: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15332: -- Update the line information that should be overwritten
15333: --
15334: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15335: p_header_num => 1);
15336: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15337:
15338: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15339:
15340: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15334: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15335: p_header_num => 1);
15336: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15337:
15338: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15339:
15340: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15341: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15342: END IF;
15337:
15338: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15339:
15340: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15341: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15342: END IF;
15343:
15344: --
15345: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15344: --
15345: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15346: --
15347: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
15348: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
15349: ELSE
15350: ---------------------------------------------------------------------------------------------------
15351: -- 4262811a Switch Sign
15352: ---------------------------------------------------------------------------------------------------
15349: ELSE
15350: ---------------------------------------------------------------------------------------------------
15351: -- 4262811a Switch Sign
15352: ---------------------------------------------------------------------------------------------------
15353: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15355: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15357: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15350: ---------------------------------------------------------------------------------------------------
15351: -- 4262811a Switch Sign
15352: ---------------------------------------------------------------------------------------------------
15353: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15355: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15357: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15358: -- 5132302
15351: -- 4262811a Switch Sign
15352: ---------------------------------------------------------------------------------------------------
15353: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15355: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15357: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15358: -- 5132302
15359: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15352: ---------------------------------------------------------------------------------------------------
15353: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15355: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15357: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15358: -- 5132302
15359: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15360: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15353: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15354: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15355: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15357: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15358: -- 5132302
15359: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15360: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15361:
15355: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15357: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15358: -- 5132302
15359: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15360: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15361:
15362: END IF;
15363:
15356: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15357: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15358: -- 5132302
15359: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15360: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15361:
15362: END IF;
15363:
15364: -- 4955764
15361:
15362: END IF;
15363:
15364: -- 4955764
15365: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15366: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15367:
15368:
15369: XLA_AE_LINES_PKG.ValidateCurrentLine;
15365: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15366: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15367:
15368:
15369: XLA_AE_LINES_PKG.ValidateCurrentLine;
15370: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15371:
15372: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15373: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15366: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15367:
15368:
15369: XLA_AE_LINES_PKG.ValidateCurrentLine;
15370: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15371:
15372: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15373: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15374: ,p_balance_type_code => l_balance_type_code);
15499: --
15500: -- bulk performance
15501: --
15502: l_balance_type_code VARCHAR2(1);
15503: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
15504: l_log_module VARCHAR2(240);
15505:
15506: --
15507: -- Upgrade strategy
15568: IF XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id = XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id OR
15569: l_balance_type_code <> 'B' THEN
15570:
15571: --
15572: XLA_AE_LINES_PKG.SetNewLine;
15573:
15574: p_balance_type_code := l_balance_type_code;
15575: -- set the flag so later we will know whether the gain loss line needs to be created
15576:
15580:
15581: --
15582: -- bulk performance
15583: --
15584: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
15585: p_header_num => 0); -- 4262811
15586: --
15587: -- set accounting line options
15588: --
15585: p_header_num => 0); -- 4262811
15586: --
15587: -- set accounting line options
15588: --
15589: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
15590: p_natural_side_code => 'G'
15591: , p_gain_or_loss_flag => 'N'
15592: , p_gl_transfer_mode_code => 'S'
15593: , p_acct_entry_type_code => 'A'
15599: --
15600: --
15601: -- set accounting line type info
15602: --
15603: xla_ae_lines_pkg.SetAcctLineType
15604: (p_component_type => l_component_type
15605: ,p_event_type_code => l_event_type_code
15606: ,p_line_definition_owner_code => l_line_definition_owner_code
15607: ,p_line_definition_code => l_line_definition_code
15613: ,p_event_class_code => l_event_class_code);
15614: --
15615: -- set accounting class
15616: --
15617: xla_ae_lines_pkg.SetAcctClass(
15618: p_accounting_class_code => 'EXCHANGE_GAIN_LOSS'
15619: , p_ae_header_id => l_ae_header_id
15620: );
15621:
15621:
15622: --
15623: -- set rounding class
15624: --
15625: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15626: 'EXCHANGE_GAIN_LOSS';
15627:
15628: --
15629: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15625: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15626: 'EXCHANGE_GAIN_LOSS';
15627:
15628: --
15629: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15630: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15631: --
15632: -- bulk performance
15633: --
15626: 'EXCHANGE_GAIN_LOSS';
15627:
15628: --
15629: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15630: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15631: --
15632: -- bulk performance
15633: --
15634: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15630: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15631: --
15632: -- bulk performance
15633: --
15634: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15635:
15636: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15637: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15638:
15632: -- bulk performance
15633: --
15634: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15635:
15636: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15637: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15638:
15639: -- 4955764
15640: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15636: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15637: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15638:
15639: -- 4955764
15640: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15641: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
15642:
15643: -- 4458381 Public Sector Enh
15644:
15664: l_rec_acct_attrs.array_char_value(7) := p_source_32;
15665: l_rec_acct_attrs.array_acct_attr_code(8) := 'TAX_LINE_REF_ID';
15666: l_rec_acct_attrs.array_num_value(8) := p_source_52;
15667:
15668: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15669: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15670:
15671: ---------------------------------------------------------------------------------------------------------------
15672: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15665: l_rec_acct_attrs.array_acct_attr_code(8) := 'TAX_LINE_REF_ID';
15666: l_rec_acct_attrs.array_num_value(8) := p_source_52;
15667:
15668: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15669: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15670:
15671: ---------------------------------------------------------------------------------------------------------------
15672: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15673: ---------------------------------------------------------------------------------------------------------------
15668: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15669: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15670:
15671: ---------------------------------------------------------------------------------------------------------------
15672: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15673: ---------------------------------------------------------------------------------------------------------------
15674: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15675:
15676: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15670:
15671: ---------------------------------------------------------------------------------------------------------------
15672: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15673: ---------------------------------------------------------------------------------------------------------------
15674: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15675:
15676: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15677: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15678:
15672: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15673: ---------------------------------------------------------------------------------------------------------------
15674: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15675:
15676: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15677: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15678:
15679: IF xla_accounting_cache_pkg.GetValueChar
15680: (p_source_code => 'LEDGER_CATEGORY_CODE'
15673: ---------------------------------------------------------------------------------------------------------------
15674: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15675:
15676: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15677: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15678:
15679: IF xla_accounting_cache_pkg.GetValueChar
15680: (p_source_code => 'LEDGER_CATEGORY_CODE'
15681: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
15684: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
15685: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
15686: )
15687: THEN
15688: xla_ae_lines_pkg.BflowUpgEntry
15689: (p_business_method_code => l_bflow_method_code
15690: ,p_business_class_code => l_bflow_class_code
15691: ,p_balance_type => l_balance_type_code);
15692: ELSE
15724: , x_value_type_code => l_adr_value_type_code
15725: , p_side => 'CREDIT'
15726: );
15727:
15728: xla_ae_lines_pkg.set_ccid(
15729: p_code_combination_id => l_ccid
15730: , p_value_type_code => l_adr_value_type_code
15731: , p_transaction_coa_id => l_adr_transaction_coa_id
15732: , p_accounting_coa_id => l_adr_accounting_coa_id
15750: , x_value_type_code => l_adr_value_type_code
15751: , p_side => 'DEBIT'
15752: );
15753:
15754: xla_ae_lines_pkg.set_ccid(
15755: p_code_combination_id => l_ccid
15756: , p_value_type_code => l_adr_value_type_code
15757: , p_transaction_coa_id => l_adr_transaction_coa_id
15758: , p_accounting_coa_id => l_adr_accounting_coa_id
15786: xla_accounting_err_pkg.build_message
15787: (p_appli_s_name => 'XLA'
15788: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
15789: ,p_token_1 => 'LINE_NUMBER'
15790: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
15791: ,p_token_2 => 'LINE_TYPE_NAME'
15792: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
15793: l_component_type
15794: ,l_component_code
15822: --
15823: --
15824: ------------------------------------------------------------------------------------------------
15825: -- 4219869 Business Flow
15826: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15827: -- Prior Entry. Currently, the following code is always generated.
15828: ------------------------------------------------------------------------------------------------
15829: XLA_AE_LINES_PKG.ValidateCurrentLine;
15830:
15825: -- 4219869 Business Flow
15826: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15827: -- Prior Entry. Currently, the following code is always generated.
15828: ------------------------------------------------------------------------------------------------
15829: XLA_AE_LINES_PKG.ValidateCurrentLine;
15830:
15831: ------------------------------------------------------------------------------------
15832: -- 4219869 Business Flow
15833: -- Populated credit and debit amounts -- Need to generate this within IF
15831: ------------------------------------------------------------------------------------
15832: -- 4219869 Business Flow
15833: -- Populated credit and debit amounts -- Need to generate this within IF
15834: ------------------------------------------------------------------------------------
15835: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15836:
15837: ----------------------------------------------------------------------------------
15838: -- 4219869 Business Flow
15839: -- Update journal entry status -- Need to generate this within IF
15863: -- To allow MPA report to determine if it should generate report process
15864: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15865: ------------------------------------------------------------------------------------------
15866:
15867: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15868: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15869: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15870: -- call ADRs
15871: -- Bug 4922099
15864: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15865: ------------------------------------------------------------------------------------------
15866:
15867: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15868: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15869: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15870: -- call ADRs
15871: -- Bug 4922099
15872: --
15888: , x_value_type_code => l_adr_value_type_code
15889: , p_side => 'CREDIT'
15890: );
15891:
15892: xla_ae_lines_pkg.set_ccid(
15893: p_code_combination_id => l_ccid
15894: , p_value_type_code => l_adr_value_type_code
15895: , p_transaction_coa_id => l_adr_transaction_coa_id
15896: , p_accounting_coa_id => l_adr_accounting_coa_id
15914: , x_value_type_code => l_adr_value_type_code
15915: , p_side => 'DEBIT'
15916: );
15917:
15918: xla_ae_lines_pkg.set_ccid(
15919: p_code_combination_id => l_ccid
15920: , p_value_type_code => l_adr_value_type_code
15921: , p_transaction_coa_id => l_adr_transaction_coa_id
15922: , p_accounting_coa_id => l_adr_accounting_coa_id
15937:
15938: --
15939: -- Update the line information that should be overwritten
15940: --
15941: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15942: p_header_num => 1);
15943: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15944:
15945: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15939: -- Update the line information that should be overwritten
15940: --
15941: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15942: p_header_num => 1);
15943: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15944:
15945: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15946:
15947: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15941: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15942: p_header_num => 1);
15943: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15944:
15945: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15946:
15947: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15948: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15949: END IF;
15944:
15945: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15946:
15947: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15948: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15949: END IF;
15950:
15951: --
15952: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15951: --
15952: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15953: --
15954: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
15955: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
15956: ELSE
15957: ---------------------------------------------------------------------------------------------------
15958: -- 4262811a Switch Sign
15959: ---------------------------------------------------------------------------------------------------
15956: ELSE
15957: ---------------------------------------------------------------------------------------------------
15958: -- 4262811a Switch Sign
15959: ---------------------------------------------------------------------------------------------------
15960: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15961: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15962: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15963: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15964: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15957: ---------------------------------------------------------------------------------------------------
15958: -- 4262811a Switch Sign
15959: ---------------------------------------------------------------------------------------------------
15960: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15961: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15962: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15963: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15964: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15965: -- 5132302
15958: -- 4262811a Switch Sign
15959: ---------------------------------------------------------------------------------------------------
15960: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15961: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15962: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15963: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15964: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15965: -- 5132302
15966: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15959: ---------------------------------------------------------------------------------------------------
15960: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15961: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15962: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15963: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15964: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15965: -- 5132302
15966: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15967: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15960: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15961: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15962: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15963: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15964: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15965: -- 5132302
15966: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15967: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15968:
15962: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15963: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15964: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15965: -- 5132302
15966: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15967: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15968:
15969: END IF;
15970:
15963: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15964: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15965: -- 5132302
15966: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15967: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15968:
15969: END IF;
15970:
15971: -- 4955764
15968:
15969: END IF;
15970:
15971: -- 4955764
15972: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15973: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15974:
15975:
15976: XLA_AE_LINES_PKG.ValidateCurrentLine;
15972: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15973: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15974:
15975:
15976: XLA_AE_LINES_PKG.ValidateCurrentLine;
15977: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15978:
15979: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15980: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15973: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15974:
15975:
15976: XLA_AE_LINES_PKG.ValidateCurrentLine;
15977: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15978:
15979: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15980: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15981: ,p_balance_type_code => l_balance_type_code);
16115: --
16116: -- bulk performance
16117: --
16118: l_balance_type_code VARCHAR2(1);
16119: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
16120: l_log_module VARCHAR2(240);
16121:
16122: --
16123: -- Upgrade strategy
16183: ') = 'ROUND'
16184: THEN
16185:
16186: --
16187: XLA_AE_LINES_PKG.SetNewLine;
16188:
16189: p_balance_type_code := l_balance_type_code;
16190: -- set the flag so later we will know whether the gain loss line needs to be created
16191:
16195:
16196: --
16197: -- bulk performance
16198: --
16199: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
16200: p_header_num => 0); -- 4262811
16201: --
16202: -- set accounting line options
16203: --
16200: p_header_num => 0); -- 4262811
16201: --
16202: -- set accounting line options
16203: --
16204: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
16205: p_natural_side_code => 'C'
16206: , p_gain_or_loss_flag => 'N'
16207: , p_gl_transfer_mode_code => 'S'
16208: , p_acct_entry_type_code => 'A'
16214: --
16215: --
16216: -- set accounting line type info
16217: --
16218: xla_ae_lines_pkg.SetAcctLineType
16219: (p_component_type => l_component_type
16220: ,p_event_type_code => l_event_type_code
16221: ,p_line_definition_owner_code => l_line_definition_owner_code
16222: ,p_line_definition_code => l_line_definition_code
16228: ,p_event_class_code => l_event_class_code);
16229: --
16230: -- set accounting class
16231: --
16232: xla_ae_lines_pkg.SetAcctClass(
16233: p_accounting_class_code => 'ROUNDING'
16234: , p_ae_header_id => l_ae_header_id
16235: );
16236:
16236:
16237: --
16238: -- set rounding class
16239: --
16240: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16241: 'RECEIVABLE';
16242:
16243: --
16244: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16240: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16241: 'RECEIVABLE';
16242:
16243: --
16244: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16245: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16246: --
16247: -- bulk performance
16248: --
16241: 'RECEIVABLE';
16242:
16243: --
16244: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16245: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16246: --
16247: -- bulk performance
16248: --
16249: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16245: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16246: --
16247: -- bulk performance
16248: --
16249: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16250:
16251: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16252: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16253:
16247: -- bulk performance
16248: --
16249: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16250:
16251: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16252: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16253:
16254: -- 4955764
16255: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16251: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16252: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16253:
16254: -- 4955764
16255: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16256: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
16257:
16258: -- 4458381 Public Sector Enh
16259:
16289: l_rec_acct_attrs.array_char_value(12) := p_source_32;
16290: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
16291: l_rec_acct_attrs.array_num_value(13) := p_source_52;
16292:
16293: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16294: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16295:
16296: ---------------------------------------------------------------------------------------------------------------
16297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16290: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
16291: l_rec_acct_attrs.array_num_value(13) := p_source_52;
16292:
16293: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16294: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16295:
16296: ---------------------------------------------------------------------------------------------------------------
16297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16298: ---------------------------------------------------------------------------------------------------------------
16293: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16294: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16295:
16296: ---------------------------------------------------------------------------------------------------------------
16297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16298: ---------------------------------------------------------------------------------------------------------------
16299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16300:
16301: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16295:
16296: ---------------------------------------------------------------------------------------------------------------
16297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16298: ---------------------------------------------------------------------------------------------------------------
16299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16300:
16301: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16302: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16303:
16297: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16298: ---------------------------------------------------------------------------------------------------------------
16299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16300:
16301: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16302: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16303:
16304: IF xla_accounting_cache_pkg.GetValueChar
16305: (p_source_code => 'LEDGER_CATEGORY_CODE'
16298: ---------------------------------------------------------------------------------------------------------------
16299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16300:
16301: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16302: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16303:
16304: IF xla_accounting_cache_pkg.GetValueChar
16305: (p_source_code => 'LEDGER_CATEGORY_CODE'
16306: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
16309: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
16310: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
16311: )
16312: THEN
16313: xla_ae_lines_pkg.BflowUpgEntry
16314: (p_business_method_code => l_bflow_method_code
16315: ,p_business_class_code => l_bflow_class_code
16316: ,p_balance_type => l_balance_type_code);
16317: ELSE
16349: , x_value_type_code => l_adr_value_type_code
16350: , p_side => 'NA'
16351: );
16352:
16353: xla_ae_lines_pkg.set_ccid(
16354: p_code_combination_id => l_ccid
16355: , p_value_type_code => l_adr_value_type_code
16356: , p_transaction_coa_id => l_adr_transaction_coa_id
16357: , p_accounting_coa_id => l_adr_accounting_coa_id
16385: xla_accounting_err_pkg.build_message
16386: (p_appli_s_name => 'XLA'
16387: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
16388: ,p_token_1 => 'LINE_NUMBER'
16389: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
16390: ,p_token_2 => 'LINE_TYPE_NAME'
16391: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
16392: l_component_type
16393: ,l_component_code
16421: --
16422: --
16423: ------------------------------------------------------------------------------------------------
16424: -- 4219869 Business Flow
16425: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16426: -- Prior Entry. Currently, the following code is always generated.
16427: ------------------------------------------------------------------------------------------------
16428: XLA_AE_LINES_PKG.ValidateCurrentLine;
16429:
16424: -- 4219869 Business Flow
16425: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16426: -- Prior Entry. Currently, the following code is always generated.
16427: ------------------------------------------------------------------------------------------------
16428: XLA_AE_LINES_PKG.ValidateCurrentLine;
16429:
16430: ------------------------------------------------------------------------------------
16431: -- 4219869 Business Flow
16432: -- Populated credit and debit amounts -- Need to generate this within IF
16430: ------------------------------------------------------------------------------------
16431: -- 4219869 Business Flow
16432: -- Populated credit and debit amounts -- Need to generate this within IF
16433: ------------------------------------------------------------------------------------
16434: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16435:
16436: ----------------------------------------------------------------------------------
16437: -- 4219869 Business Flow
16438: -- Update journal entry status -- Need to generate this within IF
16462: -- To allow MPA report to determine if it should generate report process
16463: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16464: ------------------------------------------------------------------------------------------
16465:
16466: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16467: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16468: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16469: -- call ADRs
16470: -- Bug 4922099
16463: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16464: ------------------------------------------------------------------------------------------
16465:
16466: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16467: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16468: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16469: -- call ADRs
16470: -- Bug 4922099
16471: --
16487: , x_value_type_code => l_adr_value_type_code
16488: , p_side => 'NA'
16489: );
16490:
16491: xla_ae_lines_pkg.set_ccid(
16492: p_code_combination_id => l_ccid
16493: , p_value_type_code => l_adr_value_type_code
16494: , p_transaction_coa_id => l_adr_transaction_coa_id
16495: , p_accounting_coa_id => l_adr_accounting_coa_id
16510:
16511: --
16512: -- Update the line information that should be overwritten
16513: --
16514: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16515: p_header_num => 1);
16516: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16517:
16518: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16512: -- Update the line information that should be overwritten
16513: --
16514: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16515: p_header_num => 1);
16516: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16517:
16518: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16519:
16520: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16514: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16515: p_header_num => 1);
16516: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16517:
16518: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16519:
16520: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16521: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16522: END IF;
16517:
16518: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16519:
16520: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16521: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16522: END IF;
16523:
16524: --
16525: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16524: --
16525: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16526: --
16527: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
16528: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
16529: ELSE
16530: ---------------------------------------------------------------------------------------------------
16531: -- 4262811a Switch Sign
16532: ---------------------------------------------------------------------------------------------------
16529: ELSE
16530: ---------------------------------------------------------------------------------------------------
16531: -- 4262811a Switch Sign
16532: ---------------------------------------------------------------------------------------------------
16533: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16530: ---------------------------------------------------------------------------------------------------
16531: -- 4262811a Switch Sign
16532: ---------------------------------------------------------------------------------------------------
16533: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16538: -- 5132302
16531: -- 4262811a Switch Sign
16532: ---------------------------------------------------------------------------------------------------
16533: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16538: -- 5132302
16539: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16532: ---------------------------------------------------------------------------------------------------
16533: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16538: -- 5132302
16539: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16540: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16533: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16534: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16538: -- 5132302
16539: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16540: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16541:
16535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16538: -- 5132302
16539: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16540: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16541:
16542: END IF;
16543:
16536: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16538: -- 5132302
16539: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16540: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16541:
16542: END IF;
16543:
16544: -- 4955764
16541:
16542: END IF;
16543:
16544: -- 4955764
16545: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16546: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16547:
16548:
16549: XLA_AE_LINES_PKG.ValidateCurrentLine;
16545: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16546: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16547:
16548:
16549: XLA_AE_LINES_PKG.ValidateCurrentLine;
16550: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16551:
16552: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16553: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16546: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16547:
16548:
16549: XLA_AE_LINES_PKG.ValidateCurrentLine;
16550: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16551:
16552: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16553: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16554: ,p_balance_type_code => l_balance_type_code);
16689: --
16690: -- bulk performance
16691: --
16692: l_balance_type_code VARCHAR2(1);
16693: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
16694: l_log_module VARCHAR2(240);
16695:
16696: --
16697: -- Upgrade strategy
16757: ') = 'UNBILL'
16758: THEN
16759:
16760: --
16761: XLA_AE_LINES_PKG.SetNewLine;
16762:
16763: p_balance_type_code := l_balance_type_code;
16764: -- set the flag so later we will know whether the gain loss line needs to be created
16765:
16769:
16770: --
16771: -- bulk performance
16772: --
16773: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
16774: p_header_num => 0); -- 4262811
16775: --
16776: -- set accounting line options
16777: --
16774: p_header_num => 0); -- 4262811
16775: --
16776: -- set accounting line options
16777: --
16778: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
16779: p_natural_side_code => 'C'
16780: , p_gain_or_loss_flag => 'N'
16781: , p_gl_transfer_mode_code => 'S'
16782: , p_acct_entry_type_code => 'A'
16788: --
16789: --
16790: -- set accounting line type info
16791: --
16792: xla_ae_lines_pkg.SetAcctLineType
16793: (p_component_type => l_component_type
16794: ,p_event_type_code => l_event_type_code
16795: ,p_line_definition_owner_code => l_line_definition_owner_code
16796: ,p_line_definition_code => l_line_definition_code
16802: ,p_event_class_code => l_event_class_code);
16803: --
16804: -- set accounting class
16805: --
16806: xla_ae_lines_pkg.SetAcctClass(
16807: p_accounting_class_code => 'UNBILL'
16808: , p_ae_header_id => l_ae_header_id
16809: );
16810:
16810:
16811: --
16812: -- set rounding class
16813: --
16814: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16815: 'RECEIVABLE';
16816:
16817: --
16818: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16814: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16815: 'RECEIVABLE';
16816:
16817: --
16818: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16819: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16820: --
16821: -- bulk performance
16822: --
16815: 'RECEIVABLE';
16816:
16817: --
16818: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16819: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16820: --
16821: -- bulk performance
16822: --
16823: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16819: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16820: --
16821: -- bulk performance
16822: --
16823: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16824:
16825: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16826: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16827:
16821: -- bulk performance
16822: --
16823: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16824:
16825: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16826: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16827:
16828: -- 4955764
16829: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16825: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16826: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16827:
16828: -- 4955764
16829: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16830: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
16831:
16832: -- 4458381 Public Sector Enh
16833:
16863: l_rec_acct_attrs.array_char_value(12) := p_source_32;
16864: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
16865: l_rec_acct_attrs.array_num_value(13) := p_source_52;
16866:
16867: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16868: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16869:
16870: ---------------------------------------------------------------------------------------------------------------
16871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16864: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
16865: l_rec_acct_attrs.array_num_value(13) := p_source_52;
16866:
16867: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16868: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16869:
16870: ---------------------------------------------------------------------------------------------------------------
16871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16872: ---------------------------------------------------------------------------------------------------------------
16867: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16868: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16869:
16870: ---------------------------------------------------------------------------------------------------------------
16871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16872: ---------------------------------------------------------------------------------------------------------------
16873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16874:
16875: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16869:
16870: ---------------------------------------------------------------------------------------------------------------
16871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16872: ---------------------------------------------------------------------------------------------------------------
16873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16874:
16875: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16876: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16877:
16871: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16872: ---------------------------------------------------------------------------------------------------------------
16873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16874:
16875: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16876: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16877:
16878: IF xla_accounting_cache_pkg.GetValueChar
16879: (p_source_code => 'LEDGER_CATEGORY_CODE'
16872: ---------------------------------------------------------------------------------------------------------------
16873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16874:
16875: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16876: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16877:
16878: IF xla_accounting_cache_pkg.GetValueChar
16879: (p_source_code => 'LEDGER_CATEGORY_CODE'
16880: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
16883: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
16884: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
16885: )
16886: THEN
16887: xla_ae_lines_pkg.BflowUpgEntry
16888: (p_business_method_code => l_bflow_method_code
16889: ,p_business_class_code => l_bflow_class_code
16890: ,p_balance_type => l_balance_type_code);
16891: ELSE
16923: , x_value_type_code => l_adr_value_type_code
16924: , p_side => 'NA'
16925: );
16926:
16927: xla_ae_lines_pkg.set_ccid(
16928: p_code_combination_id => l_ccid
16929: , p_value_type_code => l_adr_value_type_code
16930: , p_transaction_coa_id => l_adr_transaction_coa_id
16931: , p_accounting_coa_id => l_adr_accounting_coa_id
16959: xla_accounting_err_pkg.build_message
16960: (p_appli_s_name => 'XLA'
16961: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
16962: ,p_token_1 => 'LINE_NUMBER'
16963: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
16964: ,p_token_2 => 'LINE_TYPE_NAME'
16965: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
16966: l_component_type
16967: ,l_component_code
16995: --
16996: --
16997: ------------------------------------------------------------------------------------------------
16998: -- 4219869 Business Flow
16999: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17000: -- Prior Entry. Currently, the following code is always generated.
17001: ------------------------------------------------------------------------------------------------
17002: XLA_AE_LINES_PKG.ValidateCurrentLine;
17003:
16998: -- 4219869 Business Flow
16999: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17000: -- Prior Entry. Currently, the following code is always generated.
17001: ------------------------------------------------------------------------------------------------
17002: XLA_AE_LINES_PKG.ValidateCurrentLine;
17003:
17004: ------------------------------------------------------------------------------------
17005: -- 4219869 Business Flow
17006: -- Populated credit and debit amounts -- Need to generate this within IF
17004: ------------------------------------------------------------------------------------
17005: -- 4219869 Business Flow
17006: -- Populated credit and debit amounts -- Need to generate this within IF
17007: ------------------------------------------------------------------------------------
17008: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17009:
17010: ----------------------------------------------------------------------------------
17011: -- 4219869 Business Flow
17012: -- Update journal entry status -- Need to generate this within IF
17036: -- To allow MPA report to determine if it should generate report process
17037: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17038: ------------------------------------------------------------------------------------------
17039:
17040: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17041: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17042: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17043: -- call ADRs
17044: -- Bug 4922099
17037: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17038: ------------------------------------------------------------------------------------------
17039:
17040: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17041: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17042: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17043: -- call ADRs
17044: -- Bug 4922099
17045: --
17061: , x_value_type_code => l_adr_value_type_code
17062: , p_side => 'NA'
17063: );
17064:
17065: xla_ae_lines_pkg.set_ccid(
17066: p_code_combination_id => l_ccid
17067: , p_value_type_code => l_adr_value_type_code
17068: , p_transaction_coa_id => l_adr_transaction_coa_id
17069: , p_accounting_coa_id => l_adr_accounting_coa_id
17084:
17085: --
17086: -- Update the line information that should be overwritten
17087: --
17088: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17089: p_header_num => 1);
17090: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17091:
17092: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17086: -- Update the line information that should be overwritten
17087: --
17088: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17089: p_header_num => 1);
17090: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17091:
17092: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17093:
17094: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17088: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17089: p_header_num => 1);
17090: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17091:
17092: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17093:
17094: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17095: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17096: END IF;
17091:
17092: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17093:
17094: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17095: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17096: END IF;
17097:
17098: --
17099: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17098: --
17099: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17100: --
17101: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
17102: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
17103: ELSE
17104: ---------------------------------------------------------------------------------------------------
17105: -- 4262811a Switch Sign
17106: ---------------------------------------------------------------------------------------------------
17103: ELSE
17104: ---------------------------------------------------------------------------------------------------
17105: -- 4262811a Switch Sign
17106: ---------------------------------------------------------------------------------------------------
17107: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17109: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17111: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17104: ---------------------------------------------------------------------------------------------------
17105: -- 4262811a Switch Sign
17106: ---------------------------------------------------------------------------------------------------
17107: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17109: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17111: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17112: -- 5132302
17105: -- 4262811a Switch Sign
17106: ---------------------------------------------------------------------------------------------------
17107: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17109: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17111: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17112: -- 5132302
17113: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17106: ---------------------------------------------------------------------------------------------------
17107: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17109: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17111: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17112: -- 5132302
17113: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17114: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17107: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17108: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17109: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17111: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17112: -- 5132302
17113: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17114: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17115:
17109: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17111: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17112: -- 5132302
17113: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17114: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17115:
17116: END IF;
17117:
17110: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17111: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17112: -- 5132302
17113: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17114: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17115:
17116: END IF;
17117:
17118: -- 4955764
17115:
17116: END IF;
17117:
17118: -- 4955764
17119: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17120: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17121:
17122:
17123: XLA_AE_LINES_PKG.ValidateCurrentLine;
17119: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17120: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17121:
17122:
17123: XLA_AE_LINES_PKG.ValidateCurrentLine;
17124: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17125:
17126: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17127: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17120: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17121:
17122:
17123: XLA_AE_LINES_PKG.ValidateCurrentLine;
17124: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17125:
17126: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17127: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17128: ,p_balance_type_code => l_balance_type_code);
17263: --
17264: -- bulk performance
17265: --
17266: l_balance_type_code VARCHAR2(1);
17267: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
17268: l_log_module VARCHAR2(240);
17269:
17270: --
17271: -- Upgrade strategy
17331: ') = 'UNEARN'
17332: THEN
17333:
17334: --
17335: XLA_AE_LINES_PKG.SetNewLine;
17336:
17337: p_balance_type_code := l_balance_type_code;
17338: -- set the flag so later we will know whether the gain loss line needs to be created
17339:
17343:
17344: --
17345: -- bulk performance
17346: --
17347: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
17348: p_header_num => 0); -- 4262811
17349: --
17350: -- set accounting line options
17351: --
17348: p_header_num => 0); -- 4262811
17349: --
17350: -- set accounting line options
17351: --
17352: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
17353: p_natural_side_code => 'C'
17354: , p_gain_or_loss_flag => 'N'
17355: , p_gl_transfer_mode_code => 'S'
17356: , p_acct_entry_type_code => 'A'
17362: --
17363: --
17364: -- set accounting line type info
17365: --
17366: xla_ae_lines_pkg.SetAcctLineType
17367: (p_component_type => l_component_type
17368: ,p_event_type_code => l_event_type_code
17369: ,p_line_definition_owner_code => l_line_definition_owner_code
17370: ,p_line_definition_code => l_line_definition_code
17376: ,p_event_class_code => l_event_class_code);
17377: --
17378: -- set accounting class
17379: --
17380: xla_ae_lines_pkg.SetAcctClass(
17381: p_accounting_class_code => 'UNEARNED_REVENUE'
17382: , p_ae_header_id => l_ae_header_id
17383: );
17384:
17384:
17385: --
17386: -- set rounding class
17387: --
17388: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17389: 'RECEIVABLE';
17390:
17391: --
17392: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17388: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17389: 'RECEIVABLE';
17390:
17391: --
17392: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17393: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17394: --
17395: -- bulk performance
17396: --
17389: 'RECEIVABLE';
17390:
17391: --
17392: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17393: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17394: --
17395: -- bulk performance
17396: --
17397: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17393: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17394: --
17395: -- bulk performance
17396: --
17397: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17398:
17399: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17400: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17401:
17395: -- bulk performance
17396: --
17397: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17398:
17399: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17400: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17401:
17402: -- 4955764
17403: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17399: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17400: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17401:
17402: -- 4955764
17403: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17404: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
17405:
17406: -- 4458381 Public Sector Enh
17407:
17437: l_rec_acct_attrs.array_char_value(12) := p_source_32;
17438: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
17439: l_rec_acct_attrs.array_num_value(13) := p_source_52;
17440:
17441: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17442: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17443:
17444: ---------------------------------------------------------------------------------------------------------------
17445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17438: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
17439: l_rec_acct_attrs.array_num_value(13) := p_source_52;
17440:
17441: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17442: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17443:
17444: ---------------------------------------------------------------------------------------------------------------
17445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17446: ---------------------------------------------------------------------------------------------------------------
17441: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17442: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17443:
17444: ---------------------------------------------------------------------------------------------------------------
17445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17446: ---------------------------------------------------------------------------------------------------------------
17447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17448:
17449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17443:
17444: ---------------------------------------------------------------------------------------------------------------
17445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17446: ---------------------------------------------------------------------------------------------------------------
17447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17448:
17449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17450: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17451:
17445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17446: ---------------------------------------------------------------------------------------------------------------
17447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17448:
17449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17450: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17451:
17452: IF xla_accounting_cache_pkg.GetValueChar
17453: (p_source_code => 'LEDGER_CATEGORY_CODE'
17446: ---------------------------------------------------------------------------------------------------------------
17447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17448:
17449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17450: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17451:
17452: IF xla_accounting_cache_pkg.GetValueChar
17453: (p_source_code => 'LEDGER_CATEGORY_CODE'
17454: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
17457: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
17458: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
17459: )
17460: THEN
17461: xla_ae_lines_pkg.BflowUpgEntry
17462: (p_business_method_code => l_bflow_method_code
17463: ,p_business_class_code => l_bflow_class_code
17464: ,p_balance_type => l_balance_type_code);
17465: ELSE
17497: , x_value_type_code => l_adr_value_type_code
17498: , p_side => 'NA'
17499: );
17500:
17501: xla_ae_lines_pkg.set_ccid(
17502: p_code_combination_id => l_ccid
17503: , p_value_type_code => l_adr_value_type_code
17504: , p_transaction_coa_id => l_adr_transaction_coa_id
17505: , p_accounting_coa_id => l_adr_accounting_coa_id
17533: xla_accounting_err_pkg.build_message
17534: (p_appli_s_name => 'XLA'
17535: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
17536: ,p_token_1 => 'LINE_NUMBER'
17537: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
17538: ,p_token_2 => 'LINE_TYPE_NAME'
17539: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
17540: l_component_type
17541: ,l_component_code
17569: --
17570: --
17571: ------------------------------------------------------------------------------------------------
17572: -- 4219869 Business Flow
17573: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17574: -- Prior Entry. Currently, the following code is always generated.
17575: ------------------------------------------------------------------------------------------------
17576: XLA_AE_LINES_PKG.ValidateCurrentLine;
17577:
17572: -- 4219869 Business Flow
17573: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17574: -- Prior Entry. Currently, the following code is always generated.
17575: ------------------------------------------------------------------------------------------------
17576: XLA_AE_LINES_PKG.ValidateCurrentLine;
17577:
17578: ------------------------------------------------------------------------------------
17579: -- 4219869 Business Flow
17580: -- Populated credit and debit amounts -- Need to generate this within IF
17578: ------------------------------------------------------------------------------------
17579: -- 4219869 Business Flow
17580: -- Populated credit and debit amounts -- Need to generate this within IF
17581: ------------------------------------------------------------------------------------
17582: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17583:
17584: ----------------------------------------------------------------------------------
17585: -- 4219869 Business Flow
17586: -- Update journal entry status -- Need to generate this within IF
17610: -- To allow MPA report to determine if it should generate report process
17611: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17612: ------------------------------------------------------------------------------------------
17613:
17614: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17615: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17616: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17617: -- call ADRs
17618: -- Bug 4922099
17611: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17612: ------------------------------------------------------------------------------------------
17613:
17614: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17615: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17616: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17617: -- call ADRs
17618: -- Bug 4922099
17619: --
17635: , x_value_type_code => l_adr_value_type_code
17636: , p_side => 'NA'
17637: );
17638:
17639: xla_ae_lines_pkg.set_ccid(
17640: p_code_combination_id => l_ccid
17641: , p_value_type_code => l_adr_value_type_code
17642: , p_transaction_coa_id => l_adr_transaction_coa_id
17643: , p_accounting_coa_id => l_adr_accounting_coa_id
17658:
17659: --
17660: -- Update the line information that should be overwritten
17661: --
17662: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17663: p_header_num => 1);
17664: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17665:
17666: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17660: -- Update the line information that should be overwritten
17661: --
17662: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17663: p_header_num => 1);
17664: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17665:
17666: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17667:
17668: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17662: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17663: p_header_num => 1);
17664: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17665:
17666: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17667:
17668: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17669: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17670: END IF;
17665:
17666: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17667:
17668: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17669: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17670: END IF;
17671:
17672: --
17673: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17672: --
17673: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17674: --
17675: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
17676: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
17677: ELSE
17678: ---------------------------------------------------------------------------------------------------
17679: -- 4262811a Switch Sign
17680: ---------------------------------------------------------------------------------------------------
17677: ELSE
17678: ---------------------------------------------------------------------------------------------------
17679: -- 4262811a Switch Sign
17680: ---------------------------------------------------------------------------------------------------
17681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17678: ---------------------------------------------------------------------------------------------------
17679: -- 4262811a Switch Sign
17680: ---------------------------------------------------------------------------------------------------
17681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17686: -- 5132302
17679: -- 4262811a Switch Sign
17680: ---------------------------------------------------------------------------------------------------
17681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17686: -- 5132302
17687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17680: ---------------------------------------------------------------------------------------------------
17681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17686: -- 5132302
17687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17681: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17682: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17686: -- 5132302
17687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17689:
17683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17686: -- 5132302
17687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17689:
17690: END IF;
17691:
17684: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17686: -- 5132302
17687: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17689:
17690: END IF;
17691:
17692: -- 4955764
17689:
17690: END IF;
17691:
17692: -- 4955764
17693: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17694: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17695:
17696:
17697: XLA_AE_LINES_PKG.ValidateCurrentLine;
17693: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17694: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17695:
17696:
17697: XLA_AE_LINES_PKG.ValidateCurrentLine;
17698: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17699:
17700: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17701: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17694: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17695:
17696:
17697: XLA_AE_LINES_PKG.ValidateCurrentLine;
17698: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17699:
17700: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17701: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17702: ,p_balance_type_code => l_balance_type_code);
17833: --
17834: -- bulk performance
17835: --
17836: l_balance_type_code VARCHAR2(1);
17837: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
17838: l_log_module VARCHAR2(240);
17839:
17840: --
17841: -- Upgrade strategy
17901: ') = 'REC'
17902: THEN
17903:
17904: --
17905: XLA_AE_LINES_PKG.SetNewLine;
17906:
17907: p_balance_type_code := l_balance_type_code;
17908: -- set the flag so later we will know whether the gain loss line needs to be created
17909:
17913:
17914: --
17915: -- bulk performance
17916: --
17917: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
17918: p_header_num => 0); -- 4262811
17919: --
17920: -- set accounting line options
17921: --
17918: p_header_num => 0); -- 4262811
17919: --
17920: -- set accounting line options
17921: --
17922: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
17923: p_natural_side_code => 'D'
17924: , p_gain_or_loss_flag => 'N'
17925: , p_gl_transfer_mode_code => 'S'
17926: , p_acct_entry_type_code => 'A'
17932: --
17933: --
17934: -- set accounting line type info
17935: --
17936: xla_ae_lines_pkg.SetAcctLineType
17937: (p_component_type => l_component_type
17938: ,p_event_type_code => l_event_type_code
17939: ,p_line_definition_owner_code => l_line_definition_owner_code
17940: ,p_line_definition_code => l_line_definition_code
17946: ,p_event_class_code => l_event_class_code);
17947: --
17948: -- set accounting class
17949: --
17950: xla_ae_lines_pkg.SetAcctClass(
17951: p_accounting_class_code => 'RECEIVABLE'
17952: , p_ae_header_id => l_ae_header_id
17953: );
17954:
17954:
17955: --
17956: -- set rounding class
17957: --
17958: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17959: 'RECEIVABLE';
17960:
17961: --
17962: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17958: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17959: 'RECEIVABLE';
17960:
17961: --
17962: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17963: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17964: --
17965: -- bulk performance
17966: --
17959: 'RECEIVABLE';
17960:
17961: --
17962: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17963: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17964: --
17965: -- bulk performance
17966: --
17967: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17963: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17964: --
17965: -- bulk performance
17966: --
17967: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17968:
17969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17970: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17971:
17965: -- bulk performance
17966: --
17967: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17968:
17969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17970: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17971:
17972: -- 4955764
17973: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17970: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17971:
17972: -- 4955764
17973: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17974: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
17975:
17976: -- 4458381 Public Sector Enh
17977:
18003: l_rec_acct_attrs.array_num_value(10) := p_source_31;
18004: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
18005: l_rec_acct_attrs.array_char_value(11) := p_source_32;
18006:
18007: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18008: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18009:
18010: ---------------------------------------------------------------------------------------------------------------
18011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18004: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
18005: l_rec_acct_attrs.array_char_value(11) := p_source_32;
18006:
18007: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18008: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18009:
18010: ---------------------------------------------------------------------------------------------------------------
18011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18012: ---------------------------------------------------------------------------------------------------------------
18007: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18008: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18009:
18010: ---------------------------------------------------------------------------------------------------------------
18011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18012: ---------------------------------------------------------------------------------------------------------------
18013: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18014:
18015: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18009:
18010: ---------------------------------------------------------------------------------------------------------------
18011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18012: ---------------------------------------------------------------------------------------------------------------
18013: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18014:
18015: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18016: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18017:
18011: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18012: ---------------------------------------------------------------------------------------------------------------
18013: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18014:
18015: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18016: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18017:
18018: IF xla_accounting_cache_pkg.GetValueChar
18019: (p_source_code => 'LEDGER_CATEGORY_CODE'
18012: ---------------------------------------------------------------------------------------------------------------
18013: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18014:
18015: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18016: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18017:
18018: IF xla_accounting_cache_pkg.GetValueChar
18019: (p_source_code => 'LEDGER_CATEGORY_CODE'
18020: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
18023: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
18024: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
18025: )
18026: THEN
18027: xla_ae_lines_pkg.BflowUpgEntry
18028: (p_business_method_code => l_bflow_method_code
18029: ,p_business_class_code => l_bflow_class_code
18030: ,p_balance_type => l_balance_type_code);
18031: ELSE
18063: , x_value_type_code => l_adr_value_type_code
18064: , p_side => 'NA'
18065: );
18066:
18067: xla_ae_lines_pkg.set_ccid(
18068: p_code_combination_id => l_ccid
18069: , p_value_type_code => l_adr_value_type_code
18070: , p_transaction_coa_id => l_adr_transaction_coa_id
18071: , p_accounting_coa_id => l_adr_accounting_coa_id
18099: xla_accounting_err_pkg.build_message
18100: (p_appli_s_name => 'XLA'
18101: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
18102: ,p_token_1 => 'LINE_NUMBER'
18103: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
18104: ,p_token_2 => 'LINE_TYPE_NAME'
18105: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
18106: l_component_type
18107: ,l_component_code
18135: --
18136: --
18137: ------------------------------------------------------------------------------------------------
18138: -- 4219869 Business Flow
18139: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18140: -- Prior Entry. Currently, the following code is always generated.
18141: ------------------------------------------------------------------------------------------------
18142: XLA_AE_LINES_PKG.ValidateCurrentLine;
18143:
18138: -- 4219869 Business Flow
18139: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18140: -- Prior Entry. Currently, the following code is always generated.
18141: ------------------------------------------------------------------------------------------------
18142: XLA_AE_LINES_PKG.ValidateCurrentLine;
18143:
18144: ------------------------------------------------------------------------------------
18145: -- 4219869 Business Flow
18146: -- Populated credit and debit amounts -- Need to generate this within IF
18144: ------------------------------------------------------------------------------------
18145: -- 4219869 Business Flow
18146: -- Populated credit and debit amounts -- Need to generate this within IF
18147: ------------------------------------------------------------------------------------
18148: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18149:
18150: ----------------------------------------------------------------------------------
18151: -- 4219869 Business Flow
18152: -- Update journal entry status -- Need to generate this within IF
18176: -- To allow MPA report to determine if it should generate report process
18177: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18178: ------------------------------------------------------------------------------------------
18179:
18180: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18181: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18182: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18183: -- call ADRs
18184: -- Bug 4922099
18177: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18178: ------------------------------------------------------------------------------------------
18179:
18180: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18181: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18182: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18183: -- call ADRs
18184: -- Bug 4922099
18185: --
18201: , x_value_type_code => l_adr_value_type_code
18202: , p_side => 'NA'
18203: );
18204:
18205: xla_ae_lines_pkg.set_ccid(
18206: p_code_combination_id => l_ccid
18207: , p_value_type_code => l_adr_value_type_code
18208: , p_transaction_coa_id => l_adr_transaction_coa_id
18209: , p_accounting_coa_id => l_adr_accounting_coa_id
18224:
18225: --
18226: -- Update the line information that should be overwritten
18227: --
18228: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18229: p_header_num => 1);
18230: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18231:
18232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18226: -- Update the line information that should be overwritten
18227: --
18228: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18229: p_header_num => 1);
18230: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18231:
18232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18233:
18234: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18228: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18229: p_header_num => 1);
18230: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18231:
18232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18233:
18234: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18235: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18236: END IF;
18231:
18232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18233:
18234: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18235: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18236: END IF;
18237:
18238: --
18239: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18238: --
18239: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18240: --
18241: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
18242: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
18243: ELSE
18244: ---------------------------------------------------------------------------------------------------
18245: -- 4262811a Switch Sign
18246: ---------------------------------------------------------------------------------------------------
18243: ELSE
18244: ---------------------------------------------------------------------------------------------------
18245: -- 4262811a Switch Sign
18246: ---------------------------------------------------------------------------------------------------
18247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18244: ---------------------------------------------------------------------------------------------------
18245: -- 4262811a Switch Sign
18246: ---------------------------------------------------------------------------------------------------
18247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18252: -- 5132302
18245: -- 4262811a Switch Sign
18246: ---------------------------------------------------------------------------------------------------
18247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18252: -- 5132302
18253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18246: ---------------------------------------------------------------------------------------------------
18247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18252: -- 5132302
18253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18252: -- 5132302
18253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18255:
18249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18252: -- 5132302
18253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18255:
18256: END IF;
18257:
18250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18252: -- 5132302
18253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18255:
18256: END IF;
18257:
18258: -- 4955764
18255:
18256: END IF;
18257:
18258: -- 4955764
18259: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18260: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18261:
18262:
18263: XLA_AE_LINES_PKG.ValidateCurrentLine;
18259: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18260: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18261:
18262:
18263: XLA_AE_LINES_PKG.ValidateCurrentLine;
18264: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18265:
18266: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18267: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18260: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18261:
18262:
18263: XLA_AE_LINES_PKG.ValidateCurrentLine;
18264: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18265:
18266: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18267: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18268: ,p_balance_type_code => l_balance_type_code);
18399: --
18400: -- bulk performance
18401: --
18402: l_balance_type_code VARCHAR2(1);
18403: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
18404: l_log_module VARCHAR2(240);
18405:
18406: --
18407: -- Upgrade strategy
18467: ') = 'REV'
18468: THEN
18469:
18470: --
18471: XLA_AE_LINES_PKG.SetNewLine;
18472:
18473: p_balance_type_code := l_balance_type_code;
18474: -- set the flag so later we will know whether the gain loss line needs to be created
18475:
18479:
18480: --
18481: -- bulk performance
18482: --
18483: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
18484: p_header_num => 0); -- 4262811
18485: --
18486: -- set accounting line options
18487: --
18484: p_header_num => 0); -- 4262811
18485: --
18486: -- set accounting line options
18487: --
18488: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
18489: p_natural_side_code => 'C'
18490: , p_gain_or_loss_flag => 'N'
18491: , p_gl_transfer_mode_code => 'S'
18492: , p_acct_entry_type_code => 'A'
18498: --
18499: --
18500: -- set accounting line type info
18501: --
18502: xla_ae_lines_pkg.SetAcctLineType
18503: (p_component_type => l_component_type
18504: ,p_event_type_code => l_event_type_code
18505: ,p_line_definition_owner_code => l_line_definition_owner_code
18506: ,p_line_definition_code => l_line_definition_code
18512: ,p_event_class_code => l_event_class_code);
18513: --
18514: -- set accounting class
18515: --
18516: xla_ae_lines_pkg.SetAcctClass(
18517: p_accounting_class_code => 'ACCRUAL'
18518: , p_ae_header_id => l_ae_header_id
18519: );
18520:
18520:
18521: --
18522: -- set rounding class
18523: --
18524: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18525: 'RECEIVABLE';
18526:
18527: --
18528: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18524: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18525: 'RECEIVABLE';
18526:
18527: --
18528: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18529: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18530: --
18531: -- bulk performance
18532: --
18525: 'RECEIVABLE';
18526:
18527: --
18528: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18529: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18530: --
18531: -- bulk performance
18532: --
18533: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18529: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18530: --
18531: -- bulk performance
18532: --
18533: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18534:
18535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18536: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18537:
18531: -- bulk performance
18532: --
18533: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18534:
18535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18536: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18537:
18538: -- 4955764
18539: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18536: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18537:
18538: -- 4955764
18539: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18540: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
18541:
18542: -- 4458381 Public Sector Enh
18543:
18569: l_rec_acct_attrs.array_num_value(10) := p_source_31;
18570: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
18571: l_rec_acct_attrs.array_char_value(11) := p_source_32;
18572:
18573: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18574: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18575:
18576: ---------------------------------------------------------------------------------------------------------------
18577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18570: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
18571: l_rec_acct_attrs.array_char_value(11) := p_source_32;
18572:
18573: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18574: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18575:
18576: ---------------------------------------------------------------------------------------------------------------
18577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18578: ---------------------------------------------------------------------------------------------------------------
18573: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18574: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18575:
18576: ---------------------------------------------------------------------------------------------------------------
18577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18578: ---------------------------------------------------------------------------------------------------------------
18579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18580:
18581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18575:
18576: ---------------------------------------------------------------------------------------------------------------
18577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18578: ---------------------------------------------------------------------------------------------------------------
18579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18580:
18581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18582: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18583:
18577: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18578: ---------------------------------------------------------------------------------------------------------------
18579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18580:
18581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18582: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18583:
18584: IF xla_accounting_cache_pkg.GetValueChar
18585: (p_source_code => 'LEDGER_CATEGORY_CODE'
18578: ---------------------------------------------------------------------------------------------------------------
18579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18580:
18581: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18582: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18583:
18584: IF xla_accounting_cache_pkg.GetValueChar
18585: (p_source_code => 'LEDGER_CATEGORY_CODE'
18586: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
18589: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
18590: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
18591: )
18592: THEN
18593: xla_ae_lines_pkg.BflowUpgEntry
18594: (p_business_method_code => l_bflow_method_code
18595: ,p_business_class_code => l_bflow_class_code
18596: ,p_balance_type => l_balance_type_code);
18597: ELSE
18629: , x_value_type_code => l_adr_value_type_code
18630: , p_side => 'NA'
18631: );
18632:
18633: xla_ae_lines_pkg.set_ccid(
18634: p_code_combination_id => l_ccid
18635: , p_value_type_code => l_adr_value_type_code
18636: , p_transaction_coa_id => l_adr_transaction_coa_id
18637: , p_accounting_coa_id => l_adr_accounting_coa_id
18665: xla_accounting_err_pkg.build_message
18666: (p_appli_s_name => 'XLA'
18667: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
18668: ,p_token_1 => 'LINE_NUMBER'
18669: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
18670: ,p_token_2 => 'LINE_TYPE_NAME'
18671: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
18672: l_component_type
18673: ,l_component_code
18701: --
18702: --
18703: ------------------------------------------------------------------------------------------------
18704: -- 4219869 Business Flow
18705: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18706: -- Prior Entry. Currently, the following code is always generated.
18707: ------------------------------------------------------------------------------------------------
18708: XLA_AE_LINES_PKG.ValidateCurrentLine;
18709:
18704: -- 4219869 Business Flow
18705: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18706: -- Prior Entry. Currently, the following code is always generated.
18707: ------------------------------------------------------------------------------------------------
18708: XLA_AE_LINES_PKG.ValidateCurrentLine;
18709:
18710: ------------------------------------------------------------------------------------
18711: -- 4219869 Business Flow
18712: -- Populated credit and debit amounts -- Need to generate this within IF
18710: ------------------------------------------------------------------------------------
18711: -- 4219869 Business Flow
18712: -- Populated credit and debit amounts -- Need to generate this within IF
18713: ------------------------------------------------------------------------------------
18714: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18715:
18716: ----------------------------------------------------------------------------------
18717: -- 4219869 Business Flow
18718: -- Update journal entry status -- Need to generate this within IF
18742: -- To allow MPA report to determine if it should generate report process
18743: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18744: ------------------------------------------------------------------------------------------
18745:
18746: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18747: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18748: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18749: -- call ADRs
18750: -- Bug 4922099
18743: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18744: ------------------------------------------------------------------------------------------
18745:
18746: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18747: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18748: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18749: -- call ADRs
18750: -- Bug 4922099
18751: --
18767: , x_value_type_code => l_adr_value_type_code
18768: , p_side => 'NA'
18769: );
18770:
18771: xla_ae_lines_pkg.set_ccid(
18772: p_code_combination_id => l_ccid
18773: , p_value_type_code => l_adr_value_type_code
18774: , p_transaction_coa_id => l_adr_transaction_coa_id
18775: , p_accounting_coa_id => l_adr_accounting_coa_id
18790:
18791: --
18792: -- Update the line information that should be overwritten
18793: --
18794: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18795: p_header_num => 1);
18796: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18797:
18798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18792: -- Update the line information that should be overwritten
18793: --
18794: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18795: p_header_num => 1);
18796: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18797:
18798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18799:
18800: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18794: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18795: p_header_num => 1);
18796: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18797:
18798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18799:
18800: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18801: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18802: END IF;
18797:
18798: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18799:
18800: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18801: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18802: END IF;
18803:
18804: --
18805: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18804: --
18805: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18806: --
18807: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
18808: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
18809: ELSE
18810: ---------------------------------------------------------------------------------------------------
18811: -- 4262811a Switch Sign
18812: ---------------------------------------------------------------------------------------------------
18809: ELSE
18810: ---------------------------------------------------------------------------------------------------
18811: -- 4262811a Switch Sign
18812: ---------------------------------------------------------------------------------------------------
18813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18810: ---------------------------------------------------------------------------------------------------
18811: -- 4262811a Switch Sign
18812: ---------------------------------------------------------------------------------------------------
18813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18818: -- 5132302
18811: -- 4262811a Switch Sign
18812: ---------------------------------------------------------------------------------------------------
18813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18818: -- 5132302
18819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18812: ---------------------------------------------------------------------------------------------------
18813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18818: -- 5132302
18819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18813: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18814: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18818: -- 5132302
18819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18821:
18815: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18818: -- 5132302
18819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18821:
18822: END IF;
18823:
18816: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18817: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18818: -- 5132302
18819: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18820: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18821:
18822: END IF;
18823:
18824: -- 4955764
18821:
18822: END IF;
18823:
18824: -- 4955764
18825: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18826: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18827:
18828:
18829: XLA_AE_LINES_PKG.ValidateCurrentLine;
18825: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18826: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18827:
18828:
18829: XLA_AE_LINES_PKG.ValidateCurrentLine;
18830: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18831:
18832: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18833: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18826: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18827:
18828:
18829: XLA_AE_LINES_PKG.ValidateCurrentLine;
18830: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18831:
18832: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18833: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18834: ,p_balance_type_code => l_balance_type_code);
18967: --
18968: -- bulk performance
18969: --
18970: l_balance_type_code VARCHAR2(1);
18971: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
18972: l_log_module VARCHAR2(240);
18973:
18974: --
18975: -- Upgrade strategy
19035: ') = 'CHARGES'
19036: THEN
19037:
19038: --
19039: XLA_AE_LINES_PKG.SetNewLine;
19040:
19041: p_balance_type_code := l_balance_type_code;
19042: -- set the flag so later we will know whether the gain loss line needs to be created
19043:
19047:
19048: --
19049: -- bulk performance
19050: --
19051: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
19052: p_header_num => 0); -- 4262811
19053: --
19054: -- set accounting line options
19055: --
19052: p_header_num => 0); -- 4262811
19053: --
19054: -- set accounting line options
19055: --
19056: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
19057: p_natural_side_code => 'C'
19058: , p_gain_or_loss_flag => 'N'
19059: , p_gl_transfer_mode_code => 'S'
19060: , p_acct_entry_type_code => 'A'
19066: --
19067: --
19068: -- set accounting line type info
19069: --
19070: xla_ae_lines_pkg.SetAcctLineType
19071: (p_component_type => l_component_type
19072: ,p_event_type_code => l_event_type_code
19073: ,p_line_definition_owner_code => l_line_definition_owner_code
19074: ,p_line_definition_code => l_line_definition_code
19080: ,p_event_class_code => l_event_class_code);
19081: --
19082: -- set accounting class
19083: --
19084: xla_ae_lines_pkg.SetAcctClass(
19085: p_accounting_class_code => 'CHARGES'
19086: , p_ae_header_id => l_ae_header_id
19087: );
19088:
19088:
19089: --
19090: -- set rounding class
19091: --
19092: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19093: 'RECEIVABLE';
19094:
19095: --
19096: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19092: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19093: 'RECEIVABLE';
19094:
19095: --
19096: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19097: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19098: --
19099: -- bulk performance
19100: --
19093: 'RECEIVABLE';
19094:
19095: --
19096: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19097: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19098: --
19099: -- bulk performance
19100: --
19101: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19097: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19098: --
19099: -- bulk performance
19100: --
19101: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19102:
19103: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19104: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19105:
19099: -- bulk performance
19100: --
19101: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19102:
19103: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19104: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19105:
19106: -- 4955764
19107: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19103: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19104: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19105:
19106: -- 4955764
19107: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19108: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
19109:
19110: -- 4458381 Public Sector Enh
19111:
19139: l_rec_acct_attrs.array_char_value(11) := p_source_32;
19140: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19141: l_rec_acct_attrs.array_num_value(12) := p_source_55;
19142:
19143: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19144: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19145:
19146: ---------------------------------------------------------------------------------------------------------------
19147: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19140: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19141: l_rec_acct_attrs.array_num_value(12) := p_source_55;
19142:
19143: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19144: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19145:
19146: ---------------------------------------------------------------------------------------------------------------
19147: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19148: ---------------------------------------------------------------------------------------------------------------
19143: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19144: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19145:
19146: ---------------------------------------------------------------------------------------------------------------
19147: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19148: ---------------------------------------------------------------------------------------------------------------
19149: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19150:
19151: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19145:
19146: ---------------------------------------------------------------------------------------------------------------
19147: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19148: ---------------------------------------------------------------------------------------------------------------
19149: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19150:
19151: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19152: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19153:
19147: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19148: ---------------------------------------------------------------------------------------------------------------
19149: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19150:
19151: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19152: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19153:
19154: IF xla_accounting_cache_pkg.GetValueChar
19155: (p_source_code => 'LEDGER_CATEGORY_CODE'
19148: ---------------------------------------------------------------------------------------------------------------
19149: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19150:
19151: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19152: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19153:
19154: IF xla_accounting_cache_pkg.GetValueChar
19155: (p_source_code => 'LEDGER_CATEGORY_CODE'
19156: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
19159: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
19160: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
19161: )
19162: THEN
19163: xla_ae_lines_pkg.BflowUpgEntry
19164: (p_business_method_code => l_bflow_method_code
19165: ,p_business_class_code => l_bflow_class_code
19166: ,p_balance_type => l_balance_type_code);
19167: ELSE
19199: , x_value_type_code => l_adr_value_type_code
19200: , p_side => 'NA'
19201: );
19202:
19203: xla_ae_lines_pkg.set_ccid(
19204: p_code_combination_id => l_ccid
19205: , p_value_type_code => l_adr_value_type_code
19206: , p_transaction_coa_id => l_adr_transaction_coa_id
19207: , p_accounting_coa_id => l_adr_accounting_coa_id
19235: xla_accounting_err_pkg.build_message
19236: (p_appli_s_name => 'XLA'
19237: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
19238: ,p_token_1 => 'LINE_NUMBER'
19239: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
19240: ,p_token_2 => 'LINE_TYPE_NAME'
19241: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
19242: l_component_type
19243: ,l_component_code
19271: --
19272: --
19273: ------------------------------------------------------------------------------------------------
19274: -- 4219869 Business Flow
19275: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19276: -- Prior Entry. Currently, the following code is always generated.
19277: ------------------------------------------------------------------------------------------------
19278: XLA_AE_LINES_PKG.ValidateCurrentLine;
19279:
19274: -- 4219869 Business Flow
19275: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19276: -- Prior Entry. Currently, the following code is always generated.
19277: ------------------------------------------------------------------------------------------------
19278: XLA_AE_LINES_PKG.ValidateCurrentLine;
19279:
19280: ------------------------------------------------------------------------------------
19281: -- 4219869 Business Flow
19282: -- Populated credit and debit amounts -- Need to generate this within IF
19280: ------------------------------------------------------------------------------------
19281: -- 4219869 Business Flow
19282: -- Populated credit and debit amounts -- Need to generate this within IF
19283: ------------------------------------------------------------------------------------
19284: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19285:
19286: ----------------------------------------------------------------------------------
19287: -- 4219869 Business Flow
19288: -- Update journal entry status -- Need to generate this within IF
19312: -- To allow MPA report to determine if it should generate report process
19313: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19314: ------------------------------------------------------------------------------------------
19315:
19316: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19317: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19318: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19319: -- call ADRs
19320: -- Bug 4922099
19313: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19314: ------------------------------------------------------------------------------------------
19315:
19316: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19317: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19318: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19319: -- call ADRs
19320: -- Bug 4922099
19321: --
19337: , x_value_type_code => l_adr_value_type_code
19338: , p_side => 'NA'
19339: );
19340:
19341: xla_ae_lines_pkg.set_ccid(
19342: p_code_combination_id => l_ccid
19343: , p_value_type_code => l_adr_value_type_code
19344: , p_transaction_coa_id => l_adr_transaction_coa_id
19345: , p_accounting_coa_id => l_adr_accounting_coa_id
19360:
19361: --
19362: -- Update the line information that should be overwritten
19363: --
19364: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19365: p_header_num => 1);
19366: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19367:
19368: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19362: -- Update the line information that should be overwritten
19363: --
19364: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19365: p_header_num => 1);
19366: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19367:
19368: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19369:
19370: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19364: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19365: p_header_num => 1);
19366: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19367:
19368: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19369:
19370: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19371: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19372: END IF;
19367:
19368: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19369:
19370: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19371: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19372: END IF;
19373:
19374: --
19375: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19374: --
19375: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19376: --
19377: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
19378: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
19379: ELSE
19380: ---------------------------------------------------------------------------------------------------
19381: -- 4262811a Switch Sign
19382: ---------------------------------------------------------------------------------------------------
19379: ELSE
19380: ---------------------------------------------------------------------------------------------------
19381: -- 4262811a Switch Sign
19382: ---------------------------------------------------------------------------------------------------
19383: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19384: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19385: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19386: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19387: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19380: ---------------------------------------------------------------------------------------------------
19381: -- 4262811a Switch Sign
19382: ---------------------------------------------------------------------------------------------------
19383: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19384: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19385: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19386: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19387: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19388: -- 5132302
19381: -- 4262811a Switch Sign
19382: ---------------------------------------------------------------------------------------------------
19383: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19384: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19385: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19386: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19387: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19388: -- 5132302
19389: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19382: ---------------------------------------------------------------------------------------------------
19383: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19384: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19385: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19386: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19387: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19388: -- 5132302
19389: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19390: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19383: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19384: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19385: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19386: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19387: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19388: -- 5132302
19389: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19390: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19391:
19385: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19386: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19387: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19388: -- 5132302
19389: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19390: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19391:
19392: END IF;
19393:
19386: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19387: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19388: -- 5132302
19389: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19390: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19391:
19392: END IF;
19393:
19394: -- 4955764
19391:
19392: END IF;
19393:
19394: -- 4955764
19395: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19396: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19397:
19398:
19399: XLA_AE_LINES_PKG.ValidateCurrentLine;
19395: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19396: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19397:
19398:
19399: XLA_AE_LINES_PKG.ValidateCurrentLine;
19400: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19401:
19402: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19403: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19396: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19397:
19398:
19399: XLA_AE_LINES_PKG.ValidateCurrentLine;
19400: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19401:
19402: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19403: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19404: ,p_balance_type_code => l_balance_type_code);
19537: --
19538: -- bulk performance
19539: --
19540: l_balance_type_code VARCHAR2(1);
19541: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
19542: l_log_module VARCHAR2(240);
19543:
19544: --
19545: -- Upgrade strategy
19605: ') = 'REC'
19606: THEN
19607:
19608: --
19609: XLA_AE_LINES_PKG.SetNewLine;
19610:
19611: p_balance_type_code := l_balance_type_code;
19612: -- set the flag so later we will know whether the gain loss line needs to be created
19613:
19617:
19618: --
19619: -- bulk performance
19620: --
19621: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
19622: p_header_num => 0); -- 4262811
19623: --
19624: -- set accounting line options
19625: --
19622: p_header_num => 0); -- 4262811
19623: --
19624: -- set accounting line options
19625: --
19626: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
19627: p_natural_side_code => 'D'
19628: , p_gain_or_loss_flag => 'N'
19629: , p_gl_transfer_mode_code => 'S'
19630: , p_acct_entry_type_code => 'A'
19636: --
19637: --
19638: -- set accounting line type info
19639: --
19640: xla_ae_lines_pkg.SetAcctLineType
19641: (p_component_type => l_component_type
19642: ,p_event_type_code => l_event_type_code
19643: ,p_line_definition_owner_code => l_line_definition_owner_code
19644: ,p_line_definition_code => l_line_definition_code
19650: ,p_event_class_code => l_event_class_code);
19651: --
19652: -- set accounting class
19653: --
19654: xla_ae_lines_pkg.SetAcctClass(
19655: p_accounting_class_code => 'RECEIVABLE'
19656: , p_ae_header_id => l_ae_header_id
19657: );
19658:
19658:
19659: --
19660: -- set rounding class
19661: --
19662: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19663: 'RECEIVABLE';
19664:
19665: --
19666: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19662: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19663: 'RECEIVABLE';
19664:
19665: --
19666: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19667: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19668: --
19669: -- bulk performance
19670: --
19663: 'RECEIVABLE';
19664:
19665: --
19666: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19667: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19668: --
19669: -- bulk performance
19670: --
19671: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19667: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19668: --
19669: -- bulk performance
19670: --
19671: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19672:
19673: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19674: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19675:
19669: -- bulk performance
19670: --
19671: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19672:
19673: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19674: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19675:
19676: -- 4955764
19677: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19673: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19674: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19675:
19676: -- 4955764
19677: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19678: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
19679:
19680: -- 4458381 Public Sector Enh
19681:
19709: l_rec_acct_attrs.array_char_value(11) := p_source_32;
19710: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19711: l_rec_acct_attrs.array_num_value(12) := p_source_55;
19712:
19713: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19714: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19715:
19716: ---------------------------------------------------------------------------------------------------------------
19717: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19710: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19711: l_rec_acct_attrs.array_num_value(12) := p_source_55;
19712:
19713: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19714: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19715:
19716: ---------------------------------------------------------------------------------------------------------------
19717: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19718: ---------------------------------------------------------------------------------------------------------------
19713: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19714: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19715:
19716: ---------------------------------------------------------------------------------------------------------------
19717: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19718: ---------------------------------------------------------------------------------------------------------------
19719: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19720:
19721: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19715:
19716: ---------------------------------------------------------------------------------------------------------------
19717: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19718: ---------------------------------------------------------------------------------------------------------------
19719: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19720:
19721: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19722: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19723:
19717: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19718: ---------------------------------------------------------------------------------------------------------------
19719: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19720:
19721: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19722: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19723:
19724: IF xla_accounting_cache_pkg.GetValueChar
19725: (p_source_code => 'LEDGER_CATEGORY_CODE'
19718: ---------------------------------------------------------------------------------------------------------------
19719: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19720:
19721: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19722: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19723:
19724: IF xla_accounting_cache_pkg.GetValueChar
19725: (p_source_code => 'LEDGER_CATEGORY_CODE'
19726: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
19729: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
19730: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
19731: )
19732: THEN
19733: xla_ae_lines_pkg.BflowUpgEntry
19734: (p_business_method_code => l_bflow_method_code
19735: ,p_business_class_code => l_bflow_class_code
19736: ,p_balance_type => l_balance_type_code);
19737: ELSE
19769: , x_value_type_code => l_adr_value_type_code
19770: , p_side => 'NA'
19771: );
19772:
19773: xla_ae_lines_pkg.set_ccid(
19774: p_code_combination_id => l_ccid
19775: , p_value_type_code => l_adr_value_type_code
19776: , p_transaction_coa_id => l_adr_transaction_coa_id
19777: , p_accounting_coa_id => l_adr_accounting_coa_id
19805: xla_accounting_err_pkg.build_message
19806: (p_appli_s_name => 'XLA'
19807: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
19808: ,p_token_1 => 'LINE_NUMBER'
19809: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
19810: ,p_token_2 => 'LINE_TYPE_NAME'
19811: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
19812: l_component_type
19813: ,l_component_code
19841: --
19842: --
19843: ------------------------------------------------------------------------------------------------
19844: -- 4219869 Business Flow
19845: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19846: -- Prior Entry. Currently, the following code is always generated.
19847: ------------------------------------------------------------------------------------------------
19848: XLA_AE_LINES_PKG.ValidateCurrentLine;
19849:
19844: -- 4219869 Business Flow
19845: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19846: -- Prior Entry. Currently, the following code is always generated.
19847: ------------------------------------------------------------------------------------------------
19848: XLA_AE_LINES_PKG.ValidateCurrentLine;
19849:
19850: ------------------------------------------------------------------------------------
19851: -- 4219869 Business Flow
19852: -- Populated credit and debit amounts -- Need to generate this within IF
19850: ------------------------------------------------------------------------------------
19851: -- 4219869 Business Flow
19852: -- Populated credit and debit amounts -- Need to generate this within IF
19853: ------------------------------------------------------------------------------------
19854: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19855:
19856: ----------------------------------------------------------------------------------
19857: -- 4219869 Business Flow
19858: -- Update journal entry status -- Need to generate this within IF
19882: -- To allow MPA report to determine if it should generate report process
19883: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19884: ------------------------------------------------------------------------------------------
19885:
19886: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19887: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19888: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19889: -- call ADRs
19890: -- Bug 4922099
19883: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19884: ------------------------------------------------------------------------------------------
19885:
19886: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19887: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19888: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19889: -- call ADRs
19890: -- Bug 4922099
19891: --
19907: , x_value_type_code => l_adr_value_type_code
19908: , p_side => 'NA'
19909: );
19910:
19911: xla_ae_lines_pkg.set_ccid(
19912: p_code_combination_id => l_ccid
19913: , p_value_type_code => l_adr_value_type_code
19914: , p_transaction_coa_id => l_adr_transaction_coa_id
19915: , p_accounting_coa_id => l_adr_accounting_coa_id
19930:
19931: --
19932: -- Update the line information that should be overwritten
19933: --
19934: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19935: p_header_num => 1);
19936: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19937:
19938: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19932: -- Update the line information that should be overwritten
19933: --
19934: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19935: p_header_num => 1);
19936: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19937:
19938: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19939:
19940: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19934: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19935: p_header_num => 1);
19936: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19937:
19938: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19939:
19940: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19941: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19942: END IF;
19937:
19938: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19939:
19940: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19941: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19942: END IF;
19943:
19944: --
19945: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19944: --
19945: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19946: --
19947: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
19948: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
19949: ELSE
19950: ---------------------------------------------------------------------------------------------------
19951: -- 4262811a Switch Sign
19952: ---------------------------------------------------------------------------------------------------
19949: ELSE
19950: ---------------------------------------------------------------------------------------------------
19951: -- 4262811a Switch Sign
19952: ---------------------------------------------------------------------------------------------------
19953: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19954: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19955: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19956: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19957: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19950: ---------------------------------------------------------------------------------------------------
19951: -- 4262811a Switch Sign
19952: ---------------------------------------------------------------------------------------------------
19953: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19954: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19955: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19956: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19957: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19958: -- 5132302
19951: -- 4262811a Switch Sign
19952: ---------------------------------------------------------------------------------------------------
19953: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19954: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19955: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19956: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19957: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19958: -- 5132302
19959: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19952: ---------------------------------------------------------------------------------------------------
19953: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19954: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19955: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19956: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19957: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19958: -- 5132302
19959: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19960: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19953: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19954: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19955: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19956: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19957: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19958: -- 5132302
19959: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19960: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19961:
19955: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19956: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19957: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19958: -- 5132302
19959: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19960: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19961:
19962: END IF;
19963:
19956: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19957: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19958: -- 5132302
19959: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19960: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19961:
19962: END IF;
19963:
19964: -- 4955764
19961:
19962: END IF;
19963:
19964: -- 4955764
19965: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19966: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19967:
19968:
19969: XLA_AE_LINES_PKG.ValidateCurrentLine;
19965: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19966: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19967:
19968:
19969: XLA_AE_LINES_PKG.ValidateCurrentLine;
19970: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19971:
19972: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19973: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19966: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19967:
19968:
19969: XLA_AE_LINES_PKG.ValidateCurrentLine;
19970: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19971:
19972: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19973: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19974: ,p_balance_type_code => l_balance_type_code);
20107: --
20108: -- bulk performance
20109: --
20110: l_balance_type_code VARCHAR2(1);
20111: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
20112: l_log_module VARCHAR2(240);
20113:
20114: --
20115: -- Upgrade strategy
20175: ') = 'FREIGHT'
20176: THEN
20177:
20178: --
20179: XLA_AE_LINES_PKG.SetNewLine;
20180:
20181: p_balance_type_code := l_balance_type_code;
20182: -- set the flag so later we will know whether the gain loss line needs to be created
20183:
20187:
20188: --
20189: -- bulk performance
20190: --
20191: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
20192: p_header_num => 0); -- 4262811
20193: --
20194: -- set accounting line options
20195: --
20192: p_header_num => 0); -- 4262811
20193: --
20194: -- set accounting line options
20195: --
20196: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
20197: p_natural_side_code => 'C'
20198: , p_gain_or_loss_flag => 'N'
20199: , p_gl_transfer_mode_code => 'S'
20200: , p_acct_entry_type_code => 'A'
20206: --
20207: --
20208: -- set accounting line type info
20209: --
20210: xla_ae_lines_pkg.SetAcctLineType
20211: (p_component_type => l_component_type
20212: ,p_event_type_code => l_event_type_code
20213: ,p_line_definition_owner_code => l_line_definition_owner_code
20214: ,p_line_definition_code => l_line_definition_code
20220: ,p_event_class_code => l_event_class_code);
20221: --
20222: -- set accounting class
20223: --
20224: xla_ae_lines_pkg.SetAcctClass(
20225: p_accounting_class_code => 'FREIGHT'
20226: , p_ae_header_id => l_ae_header_id
20227: );
20228:
20228:
20229: --
20230: -- set rounding class
20231: --
20232: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20233: 'RECEIVABLE';
20234:
20235: --
20236: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20232: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20233: 'RECEIVABLE';
20234:
20235: --
20236: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20237: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20238: --
20239: -- bulk performance
20240: --
20233: 'RECEIVABLE';
20234:
20235: --
20236: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20237: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20238: --
20239: -- bulk performance
20240: --
20241: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20237: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20238: --
20239: -- bulk performance
20240: --
20241: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20242:
20243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20244: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20245:
20239: -- bulk performance
20240: --
20241: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20242:
20243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20244: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20245:
20246: -- 4955764
20247: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20244: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20245:
20246: -- 4955764
20247: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20248: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
20249:
20250: -- 4458381 Public Sector Enh
20251:
20279: l_rec_acct_attrs.array_char_value(11) := p_source_32;
20280: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20281: l_rec_acct_attrs.array_num_value(12) := p_source_55;
20282:
20283: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20284: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20285:
20286: ---------------------------------------------------------------------------------------------------------------
20287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20280: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20281: l_rec_acct_attrs.array_num_value(12) := p_source_55;
20282:
20283: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20284: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20285:
20286: ---------------------------------------------------------------------------------------------------------------
20287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20288: ---------------------------------------------------------------------------------------------------------------
20283: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20284: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20285:
20286: ---------------------------------------------------------------------------------------------------------------
20287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20288: ---------------------------------------------------------------------------------------------------------------
20289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20290:
20291: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20285:
20286: ---------------------------------------------------------------------------------------------------------------
20287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20288: ---------------------------------------------------------------------------------------------------------------
20289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20290:
20291: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20292: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20293:
20287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20288: ---------------------------------------------------------------------------------------------------------------
20289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20290:
20291: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20292: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20293:
20294: IF xla_accounting_cache_pkg.GetValueChar
20295: (p_source_code => 'LEDGER_CATEGORY_CODE'
20288: ---------------------------------------------------------------------------------------------------------------
20289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20290:
20291: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20292: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20293:
20294: IF xla_accounting_cache_pkg.GetValueChar
20295: (p_source_code => 'LEDGER_CATEGORY_CODE'
20296: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
20299: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
20300: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
20301: )
20302: THEN
20303: xla_ae_lines_pkg.BflowUpgEntry
20304: (p_business_method_code => l_bflow_method_code
20305: ,p_business_class_code => l_bflow_class_code
20306: ,p_balance_type => l_balance_type_code);
20307: ELSE
20339: , x_value_type_code => l_adr_value_type_code
20340: , p_side => 'NA'
20341: );
20342:
20343: xla_ae_lines_pkg.set_ccid(
20344: p_code_combination_id => l_ccid
20345: , p_value_type_code => l_adr_value_type_code
20346: , p_transaction_coa_id => l_adr_transaction_coa_id
20347: , p_accounting_coa_id => l_adr_accounting_coa_id
20375: xla_accounting_err_pkg.build_message
20376: (p_appli_s_name => 'XLA'
20377: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
20378: ,p_token_1 => 'LINE_NUMBER'
20379: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
20380: ,p_token_2 => 'LINE_TYPE_NAME'
20381: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
20382: l_component_type
20383: ,l_component_code
20411: --
20412: --
20413: ------------------------------------------------------------------------------------------------
20414: -- 4219869 Business Flow
20415: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20416: -- Prior Entry. Currently, the following code is always generated.
20417: ------------------------------------------------------------------------------------------------
20418: XLA_AE_LINES_PKG.ValidateCurrentLine;
20419:
20414: -- 4219869 Business Flow
20415: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20416: -- Prior Entry. Currently, the following code is always generated.
20417: ------------------------------------------------------------------------------------------------
20418: XLA_AE_LINES_PKG.ValidateCurrentLine;
20419:
20420: ------------------------------------------------------------------------------------
20421: -- 4219869 Business Flow
20422: -- Populated credit and debit amounts -- Need to generate this within IF
20420: ------------------------------------------------------------------------------------
20421: -- 4219869 Business Flow
20422: -- Populated credit and debit amounts -- Need to generate this within IF
20423: ------------------------------------------------------------------------------------
20424: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20425:
20426: ----------------------------------------------------------------------------------
20427: -- 4219869 Business Flow
20428: -- Update journal entry status -- Need to generate this within IF
20452: -- To allow MPA report to determine if it should generate report process
20453: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20454: ------------------------------------------------------------------------------------------
20455:
20456: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20457: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20458: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20459: -- call ADRs
20460: -- Bug 4922099
20453: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20454: ------------------------------------------------------------------------------------------
20455:
20456: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20457: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20458: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20459: -- call ADRs
20460: -- Bug 4922099
20461: --
20477: , x_value_type_code => l_adr_value_type_code
20478: , p_side => 'NA'
20479: );
20480:
20481: xla_ae_lines_pkg.set_ccid(
20482: p_code_combination_id => l_ccid
20483: , p_value_type_code => l_adr_value_type_code
20484: , p_transaction_coa_id => l_adr_transaction_coa_id
20485: , p_accounting_coa_id => l_adr_accounting_coa_id
20500:
20501: --
20502: -- Update the line information that should be overwritten
20503: --
20504: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20505: p_header_num => 1);
20506: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20507:
20508: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20502: -- Update the line information that should be overwritten
20503: --
20504: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20505: p_header_num => 1);
20506: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20507:
20508: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20509:
20510: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20504: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20505: p_header_num => 1);
20506: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20507:
20508: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20509:
20510: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20511: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20512: END IF;
20507:
20508: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20509:
20510: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20511: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20512: END IF;
20513:
20514: --
20515: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20514: --
20515: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20516: --
20517: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
20518: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
20519: ELSE
20520: ---------------------------------------------------------------------------------------------------
20521: -- 4262811a Switch Sign
20522: ---------------------------------------------------------------------------------------------------
20519: ELSE
20520: ---------------------------------------------------------------------------------------------------
20521: -- 4262811a Switch Sign
20522: ---------------------------------------------------------------------------------------------------
20523: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20524: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20526: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20520: ---------------------------------------------------------------------------------------------------
20521: -- 4262811a Switch Sign
20522: ---------------------------------------------------------------------------------------------------
20523: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20524: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20526: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20528: -- 5132302
20521: -- 4262811a Switch Sign
20522: ---------------------------------------------------------------------------------------------------
20523: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20524: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20526: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20528: -- 5132302
20529: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20522: ---------------------------------------------------------------------------------------------------
20523: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20524: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20526: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20528: -- 5132302
20529: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20530: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20523: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20524: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20526: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20528: -- 5132302
20529: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20530: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20531:
20525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20526: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20528: -- 5132302
20529: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20530: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20531:
20532: END IF;
20533:
20526: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20528: -- 5132302
20529: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20530: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20531:
20532: END IF;
20533:
20534: -- 4955764
20531:
20532: END IF;
20533:
20534: -- 4955764
20535: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20536: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20537:
20538:
20539: XLA_AE_LINES_PKG.ValidateCurrentLine;
20535: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20536: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20537:
20538:
20539: XLA_AE_LINES_PKG.ValidateCurrentLine;
20540: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20541:
20542: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20543: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20536: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20537:
20538:
20539: XLA_AE_LINES_PKG.ValidateCurrentLine;
20540: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20541:
20542: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20543: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20544: ,p_balance_type_code => l_balance_type_code);
20677: --
20678: -- bulk performance
20679: --
20680: l_balance_type_code VARCHAR2(1);
20681: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
20682: l_log_module VARCHAR2(240);
20683:
20684: --
20685: -- Upgrade strategy
20745: ') = 'REV'
20746: THEN
20747:
20748: --
20749: XLA_AE_LINES_PKG.SetNewLine;
20750:
20751: p_balance_type_code := l_balance_type_code;
20752: -- set the flag so later we will know whether the gain loss line needs to be created
20753:
20757:
20758: --
20759: -- bulk performance
20760: --
20761: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
20762: p_header_num => 0); -- 4262811
20763: --
20764: -- set accounting line options
20765: --
20762: p_header_num => 0); -- 4262811
20763: --
20764: -- set accounting line options
20765: --
20766: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
20767: p_natural_side_code => 'C'
20768: , p_gain_or_loss_flag => 'N'
20769: , p_gl_transfer_mode_code => 'S'
20770: , p_acct_entry_type_code => 'A'
20776: --
20777: --
20778: -- set accounting line type info
20779: --
20780: xla_ae_lines_pkg.SetAcctLineType
20781: (p_component_type => l_component_type
20782: ,p_event_type_code => l_event_type_code
20783: ,p_line_definition_owner_code => l_line_definition_owner_code
20784: ,p_line_definition_code => l_line_definition_code
20790: ,p_event_class_code => l_event_class_code);
20791: --
20792: -- set accounting class
20793: --
20794: xla_ae_lines_pkg.SetAcctClass(
20795: p_accounting_class_code => 'REVENUE'
20796: , p_ae_header_id => l_ae_header_id
20797: );
20798:
20798:
20799: --
20800: -- set rounding class
20801: --
20802: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20803: 'RECEIVABLE';
20804:
20805: --
20806: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20802: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20803: 'RECEIVABLE';
20804:
20805: --
20806: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20807: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20808: --
20809: -- bulk performance
20810: --
20803: 'RECEIVABLE';
20804:
20805: --
20806: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20807: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20808: --
20809: -- bulk performance
20810: --
20811: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20807: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20808: --
20809: -- bulk performance
20810: --
20811: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20812:
20813: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20814: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20815:
20809: -- bulk performance
20810: --
20811: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20812:
20813: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20814: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20815:
20816: -- 4955764
20817: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20813: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20814: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20815:
20816: -- 4955764
20817: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20818: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
20819:
20820: -- 4458381 Public Sector Enh
20821:
20849: l_rec_acct_attrs.array_char_value(11) := p_source_32;
20850: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20851: l_rec_acct_attrs.array_num_value(12) := p_source_55;
20852:
20853: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20854: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20855:
20856: ---------------------------------------------------------------------------------------------------------------
20857: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20850: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20851: l_rec_acct_attrs.array_num_value(12) := p_source_55;
20852:
20853: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20854: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20855:
20856: ---------------------------------------------------------------------------------------------------------------
20857: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20858: ---------------------------------------------------------------------------------------------------------------
20853: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20854: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20855:
20856: ---------------------------------------------------------------------------------------------------------------
20857: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20858: ---------------------------------------------------------------------------------------------------------------
20859: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20860:
20861: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20855:
20856: ---------------------------------------------------------------------------------------------------------------
20857: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20858: ---------------------------------------------------------------------------------------------------------------
20859: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20860:
20861: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20862: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20863:
20857: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20858: ---------------------------------------------------------------------------------------------------------------
20859: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20860:
20861: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20862: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20863:
20864: IF xla_accounting_cache_pkg.GetValueChar
20865: (p_source_code => 'LEDGER_CATEGORY_CODE'
20858: ---------------------------------------------------------------------------------------------------------------
20859: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20860:
20861: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20862: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20863:
20864: IF xla_accounting_cache_pkg.GetValueChar
20865: (p_source_code => 'LEDGER_CATEGORY_CODE'
20866: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
20869: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
20870: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
20871: )
20872: THEN
20873: xla_ae_lines_pkg.BflowUpgEntry
20874: (p_business_method_code => l_bflow_method_code
20875: ,p_business_class_code => l_bflow_class_code
20876: ,p_balance_type => l_balance_type_code);
20877: ELSE
20909: , x_value_type_code => l_adr_value_type_code
20910: , p_side => 'NA'
20911: );
20912:
20913: xla_ae_lines_pkg.set_ccid(
20914: p_code_combination_id => l_ccid
20915: , p_value_type_code => l_adr_value_type_code
20916: , p_transaction_coa_id => l_adr_transaction_coa_id
20917: , p_accounting_coa_id => l_adr_accounting_coa_id
20945: xla_accounting_err_pkg.build_message
20946: (p_appli_s_name => 'XLA'
20947: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
20948: ,p_token_1 => 'LINE_NUMBER'
20949: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
20950: ,p_token_2 => 'LINE_TYPE_NAME'
20951: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
20952: l_component_type
20953: ,l_component_code
20981: --
20982: --
20983: ------------------------------------------------------------------------------------------------
20984: -- 4219869 Business Flow
20985: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20986: -- Prior Entry. Currently, the following code is always generated.
20987: ------------------------------------------------------------------------------------------------
20988: XLA_AE_LINES_PKG.ValidateCurrentLine;
20989:
20984: -- 4219869 Business Flow
20985: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20986: -- Prior Entry. Currently, the following code is always generated.
20987: ------------------------------------------------------------------------------------------------
20988: XLA_AE_LINES_PKG.ValidateCurrentLine;
20989:
20990: ------------------------------------------------------------------------------------
20991: -- 4219869 Business Flow
20992: -- Populated credit and debit amounts -- Need to generate this within IF
20990: ------------------------------------------------------------------------------------
20991: -- 4219869 Business Flow
20992: -- Populated credit and debit amounts -- Need to generate this within IF
20993: ------------------------------------------------------------------------------------
20994: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20995:
20996: ----------------------------------------------------------------------------------
20997: -- 4219869 Business Flow
20998: -- Update journal entry status -- Need to generate this within IF
21022: -- To allow MPA report to determine if it should generate report process
21023: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21024: ------------------------------------------------------------------------------------------
21025:
21026: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21027: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21028: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21029: -- call ADRs
21030: -- Bug 4922099
21023: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21024: ------------------------------------------------------------------------------------------
21025:
21026: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21027: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21028: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21029: -- call ADRs
21030: -- Bug 4922099
21031: --
21047: , x_value_type_code => l_adr_value_type_code
21048: , p_side => 'NA'
21049: );
21050:
21051: xla_ae_lines_pkg.set_ccid(
21052: p_code_combination_id => l_ccid
21053: , p_value_type_code => l_adr_value_type_code
21054: , p_transaction_coa_id => l_adr_transaction_coa_id
21055: , p_accounting_coa_id => l_adr_accounting_coa_id
21070:
21071: --
21072: -- Update the line information that should be overwritten
21073: --
21074: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21075: p_header_num => 1);
21076: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21077:
21078: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21072: -- Update the line information that should be overwritten
21073: --
21074: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21075: p_header_num => 1);
21076: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21077:
21078: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21079:
21080: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21074: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21075: p_header_num => 1);
21076: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21077:
21078: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21079:
21080: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21081: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21082: END IF;
21077:
21078: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21079:
21080: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21081: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21082: END IF;
21083:
21084: --
21085: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21084: --
21085: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21086: --
21087: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
21088: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
21089: ELSE
21090: ---------------------------------------------------------------------------------------------------
21091: -- 4262811a Switch Sign
21092: ---------------------------------------------------------------------------------------------------
21089: ELSE
21090: ---------------------------------------------------------------------------------------------------
21091: -- 4262811a Switch Sign
21092: ---------------------------------------------------------------------------------------------------
21093: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21095: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21097: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21090: ---------------------------------------------------------------------------------------------------
21091: -- 4262811a Switch Sign
21092: ---------------------------------------------------------------------------------------------------
21093: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21095: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21097: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21098: -- 5132302
21091: -- 4262811a Switch Sign
21092: ---------------------------------------------------------------------------------------------------
21093: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21095: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21097: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21098: -- 5132302
21099: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21092: ---------------------------------------------------------------------------------------------------
21093: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21095: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21097: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21098: -- 5132302
21099: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21100: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21093: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21094: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21095: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21097: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21098: -- 5132302
21099: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21100: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21101:
21095: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21097: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21098: -- 5132302
21099: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21100: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21101:
21102: END IF;
21103:
21096: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21097: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21098: -- 5132302
21099: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21100: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21101:
21102: END IF;
21103:
21104: -- 4955764
21101:
21102: END IF;
21103:
21104: -- 4955764
21105: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21106: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21107:
21108:
21109: XLA_AE_LINES_PKG.ValidateCurrentLine;
21105: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21106: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21107:
21108:
21109: XLA_AE_LINES_PKG.ValidateCurrentLine;
21110: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21111:
21112: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21113: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21106: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21107:
21108:
21109: XLA_AE_LINES_PKG.ValidateCurrentLine;
21110: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21111:
21112: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21113: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21114: ,p_balance_type_code => l_balance_type_code);
21247: --
21248: -- bulk performance
21249: --
21250: l_balance_type_code VARCHAR2(1);
21251: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
21252: l_log_module VARCHAR2(240);
21253:
21254: --
21255: -- Upgrade strategy
21315: ') = 'ROUND'
21316: THEN
21317:
21318: --
21319: XLA_AE_LINES_PKG.SetNewLine;
21320:
21321: p_balance_type_code := l_balance_type_code;
21322: -- set the flag so later we will know whether the gain loss line needs to be created
21323:
21327:
21328: --
21329: -- bulk performance
21330: --
21331: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
21332: p_header_num => 0); -- 4262811
21333: --
21334: -- set accounting line options
21335: --
21332: p_header_num => 0); -- 4262811
21333: --
21334: -- set accounting line options
21335: --
21336: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
21337: p_natural_side_code => 'C'
21338: , p_gain_or_loss_flag => 'N'
21339: , p_gl_transfer_mode_code => 'S'
21340: , p_acct_entry_type_code => 'A'
21346: --
21347: --
21348: -- set accounting line type info
21349: --
21350: xla_ae_lines_pkg.SetAcctLineType
21351: (p_component_type => l_component_type
21352: ,p_event_type_code => l_event_type_code
21353: ,p_line_definition_owner_code => l_line_definition_owner_code
21354: ,p_line_definition_code => l_line_definition_code
21360: ,p_event_class_code => l_event_class_code);
21361: --
21362: -- set accounting class
21363: --
21364: xla_ae_lines_pkg.SetAcctClass(
21365: p_accounting_class_code => 'ROUNDING'
21366: , p_ae_header_id => l_ae_header_id
21367: );
21368:
21368:
21369: --
21370: -- set rounding class
21371: --
21372: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21373: 'RECEIVABLE';
21374:
21375: --
21376: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21372: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21373: 'RECEIVABLE';
21374:
21375: --
21376: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21377: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21378: --
21379: -- bulk performance
21380: --
21373: 'RECEIVABLE';
21374:
21375: --
21376: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21377: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21378: --
21379: -- bulk performance
21380: --
21381: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21377: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21378: --
21379: -- bulk performance
21380: --
21381: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21382:
21383: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21384: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21385:
21379: -- bulk performance
21380: --
21381: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21382:
21383: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21384: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21385:
21386: -- 4955764
21387: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21383: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21384: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21385:
21386: -- 4955764
21387: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21388: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
21389:
21390: -- 4458381 Public Sector Enh
21391:
21419: l_rec_acct_attrs.array_char_value(11) := p_source_32;
21420: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21421: l_rec_acct_attrs.array_num_value(12) := p_source_55;
21422:
21423: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21424: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21425:
21426: ---------------------------------------------------------------------------------------------------------------
21427: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21420: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21421: l_rec_acct_attrs.array_num_value(12) := p_source_55;
21422:
21423: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21424: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21425:
21426: ---------------------------------------------------------------------------------------------------------------
21427: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21428: ---------------------------------------------------------------------------------------------------------------
21423: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21424: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21425:
21426: ---------------------------------------------------------------------------------------------------------------
21427: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21428: ---------------------------------------------------------------------------------------------------------------
21429: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21430:
21431: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21425:
21426: ---------------------------------------------------------------------------------------------------------------
21427: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21428: ---------------------------------------------------------------------------------------------------------------
21429: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21430:
21431: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21432: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21433:
21427: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21428: ---------------------------------------------------------------------------------------------------------------
21429: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21430:
21431: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21432: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21433:
21434: IF xla_accounting_cache_pkg.GetValueChar
21435: (p_source_code => 'LEDGER_CATEGORY_CODE'
21428: ---------------------------------------------------------------------------------------------------------------
21429: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21430:
21431: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21432: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21433:
21434: IF xla_accounting_cache_pkg.GetValueChar
21435: (p_source_code => 'LEDGER_CATEGORY_CODE'
21436: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
21439: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
21440: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
21441: )
21442: THEN
21443: xla_ae_lines_pkg.BflowUpgEntry
21444: (p_business_method_code => l_bflow_method_code
21445: ,p_business_class_code => l_bflow_class_code
21446: ,p_balance_type => l_balance_type_code);
21447: ELSE
21479: , x_value_type_code => l_adr_value_type_code
21480: , p_side => 'NA'
21481: );
21482:
21483: xla_ae_lines_pkg.set_ccid(
21484: p_code_combination_id => l_ccid
21485: , p_value_type_code => l_adr_value_type_code
21486: , p_transaction_coa_id => l_adr_transaction_coa_id
21487: , p_accounting_coa_id => l_adr_accounting_coa_id
21515: xla_accounting_err_pkg.build_message
21516: (p_appli_s_name => 'XLA'
21517: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
21518: ,p_token_1 => 'LINE_NUMBER'
21519: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
21520: ,p_token_2 => 'LINE_TYPE_NAME'
21521: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
21522: l_component_type
21523: ,l_component_code
21551: --
21552: --
21553: ------------------------------------------------------------------------------------------------
21554: -- 4219869 Business Flow
21555: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21556: -- Prior Entry. Currently, the following code is always generated.
21557: ------------------------------------------------------------------------------------------------
21558: XLA_AE_LINES_PKG.ValidateCurrentLine;
21559:
21554: -- 4219869 Business Flow
21555: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21556: -- Prior Entry. Currently, the following code is always generated.
21557: ------------------------------------------------------------------------------------------------
21558: XLA_AE_LINES_PKG.ValidateCurrentLine;
21559:
21560: ------------------------------------------------------------------------------------
21561: -- 4219869 Business Flow
21562: -- Populated credit and debit amounts -- Need to generate this within IF
21560: ------------------------------------------------------------------------------------
21561: -- 4219869 Business Flow
21562: -- Populated credit and debit amounts -- Need to generate this within IF
21563: ------------------------------------------------------------------------------------
21564: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21565:
21566: ----------------------------------------------------------------------------------
21567: -- 4219869 Business Flow
21568: -- Update journal entry status -- Need to generate this within IF
21592: -- To allow MPA report to determine if it should generate report process
21593: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21594: ------------------------------------------------------------------------------------------
21595:
21596: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21597: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21598: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21599: -- call ADRs
21600: -- Bug 4922099
21593: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21594: ------------------------------------------------------------------------------------------
21595:
21596: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21597: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21598: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21599: -- call ADRs
21600: -- Bug 4922099
21601: --
21617: , x_value_type_code => l_adr_value_type_code
21618: , p_side => 'NA'
21619: );
21620:
21621: xla_ae_lines_pkg.set_ccid(
21622: p_code_combination_id => l_ccid
21623: , p_value_type_code => l_adr_value_type_code
21624: , p_transaction_coa_id => l_adr_transaction_coa_id
21625: , p_accounting_coa_id => l_adr_accounting_coa_id
21640:
21641: --
21642: -- Update the line information that should be overwritten
21643: --
21644: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21645: p_header_num => 1);
21646: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21647:
21648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21642: -- Update the line information that should be overwritten
21643: --
21644: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21645: p_header_num => 1);
21646: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21647:
21648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21649:
21650: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21644: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21645: p_header_num => 1);
21646: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21647:
21648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21649:
21650: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21651: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21652: END IF;
21647:
21648: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21649:
21650: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21651: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21652: END IF;
21653:
21654: --
21655: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21654: --
21655: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21656: --
21657: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
21658: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
21659: ELSE
21660: ---------------------------------------------------------------------------------------------------
21661: -- 4262811a Switch Sign
21662: ---------------------------------------------------------------------------------------------------
21659: ELSE
21660: ---------------------------------------------------------------------------------------------------
21661: -- 4262811a Switch Sign
21662: ---------------------------------------------------------------------------------------------------
21663: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21664: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21665: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21666: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21667: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21660: ---------------------------------------------------------------------------------------------------
21661: -- 4262811a Switch Sign
21662: ---------------------------------------------------------------------------------------------------
21663: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21664: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21665: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21666: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21667: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21668: -- 5132302
21661: -- 4262811a Switch Sign
21662: ---------------------------------------------------------------------------------------------------
21663: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21664: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21665: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21666: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21667: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21668: -- 5132302
21669: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21662: ---------------------------------------------------------------------------------------------------
21663: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21664: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21665: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21666: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21667: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21668: -- 5132302
21669: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21670: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21663: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21664: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21665: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21666: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21667: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21668: -- 5132302
21669: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21670: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21671:
21665: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21666: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21667: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21668: -- 5132302
21669: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21670: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21671:
21672: END IF;
21673:
21666: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21667: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21668: -- 5132302
21669: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21670: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21671:
21672: END IF;
21673:
21674: -- 4955764
21671:
21672: END IF;
21673:
21674: -- 4955764
21675: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21676: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21677:
21678:
21679: XLA_AE_LINES_PKG.ValidateCurrentLine;
21675: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21676: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21677:
21678:
21679: XLA_AE_LINES_PKG.ValidateCurrentLine;
21680: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21681:
21682: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21683: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21676: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21677:
21678:
21679: XLA_AE_LINES_PKG.ValidateCurrentLine;
21680: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21681:
21682: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21683: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21684: ,p_balance_type_code => l_balance_type_code);
21817: --
21818: -- bulk performance
21819: --
21820: l_balance_type_code VARCHAR2(1);
21821: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
21822: l_log_module VARCHAR2(240);
21823:
21824: --
21825: -- Upgrade strategy
21885: ') = 'SUSPENSE'
21886: THEN
21887:
21888: --
21889: XLA_AE_LINES_PKG.SetNewLine;
21890:
21891: p_balance_type_code := l_balance_type_code;
21892: -- set the flag so later we will know whether the gain loss line needs to be created
21893:
21897:
21898: --
21899: -- bulk performance
21900: --
21901: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
21902: p_header_num => 0); -- 4262811
21903: --
21904: -- set accounting line options
21905: --
21902: p_header_num => 0); -- 4262811
21903: --
21904: -- set accounting line options
21905: --
21906: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
21907: p_natural_side_code => 'C'
21908: , p_gain_or_loss_flag => 'N'
21909: , p_gl_transfer_mode_code => 'S'
21910: , p_acct_entry_type_code => 'A'
21916: --
21917: --
21918: -- set accounting line type info
21919: --
21920: xla_ae_lines_pkg.SetAcctLineType
21921: (p_component_type => l_component_type
21922: ,p_event_type_code => l_event_type_code
21923: ,p_line_definition_owner_code => l_line_definition_owner_code
21924: ,p_line_definition_code => l_line_definition_code
21930: ,p_event_class_code => l_event_class_code);
21931: --
21932: -- set accounting class
21933: --
21934: xla_ae_lines_pkg.SetAcctClass(
21935: p_accounting_class_code => 'SUSPENSE'
21936: , p_ae_header_id => l_ae_header_id
21937: );
21938:
21938:
21939: --
21940: -- set rounding class
21941: --
21942: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21943: 'RECEIVABLE';
21944:
21945: --
21946: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21942: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21943: 'RECEIVABLE';
21944:
21945: --
21946: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21947: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21948: --
21949: -- bulk performance
21950: --
21943: 'RECEIVABLE';
21944:
21945: --
21946: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21947: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21948: --
21949: -- bulk performance
21950: --
21951: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21947: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21948: --
21949: -- bulk performance
21950: --
21951: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21952:
21953: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21954: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21955:
21949: -- bulk performance
21950: --
21951: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21952:
21953: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21954: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21955:
21956: -- 4955764
21957: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21953: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21954: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21955:
21956: -- 4955764
21957: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21958: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
21959:
21960: -- 4458381 Public Sector Enh
21961:
21989: l_rec_acct_attrs.array_char_value(11) := p_source_32;
21990: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21991: l_rec_acct_attrs.array_num_value(12) := p_source_55;
21992:
21993: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21994: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21995:
21996: ---------------------------------------------------------------------------------------------------------------
21997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21990: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21991: l_rec_acct_attrs.array_num_value(12) := p_source_55;
21992:
21993: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21994: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21995:
21996: ---------------------------------------------------------------------------------------------------------------
21997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21998: ---------------------------------------------------------------------------------------------------------------
21993: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21994: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21995:
21996: ---------------------------------------------------------------------------------------------------------------
21997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21998: ---------------------------------------------------------------------------------------------------------------
21999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22000:
22001: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21995:
21996: ---------------------------------------------------------------------------------------------------------------
21997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21998: ---------------------------------------------------------------------------------------------------------------
21999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22000:
22001: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22002: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22003:
21997: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21998: ---------------------------------------------------------------------------------------------------------------
21999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22000:
22001: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22002: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22003:
22004: IF xla_accounting_cache_pkg.GetValueChar
22005: (p_source_code => 'LEDGER_CATEGORY_CODE'
21998: ---------------------------------------------------------------------------------------------------------------
21999: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22000:
22001: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22002: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22003:
22004: IF xla_accounting_cache_pkg.GetValueChar
22005: (p_source_code => 'LEDGER_CATEGORY_CODE'
22006: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
22009: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
22010: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
22011: )
22012: THEN
22013: xla_ae_lines_pkg.BflowUpgEntry
22014: (p_business_method_code => l_bflow_method_code
22015: ,p_business_class_code => l_bflow_class_code
22016: ,p_balance_type => l_balance_type_code);
22017: ELSE
22049: , x_value_type_code => l_adr_value_type_code
22050: , p_side => 'NA'
22051: );
22052:
22053: xla_ae_lines_pkg.set_ccid(
22054: p_code_combination_id => l_ccid
22055: , p_value_type_code => l_adr_value_type_code
22056: , p_transaction_coa_id => l_adr_transaction_coa_id
22057: , p_accounting_coa_id => l_adr_accounting_coa_id
22085: xla_accounting_err_pkg.build_message
22086: (p_appli_s_name => 'XLA'
22087: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
22088: ,p_token_1 => 'LINE_NUMBER'
22089: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
22090: ,p_token_2 => 'LINE_TYPE_NAME'
22091: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
22092: l_component_type
22093: ,l_component_code
22121: --
22122: --
22123: ------------------------------------------------------------------------------------------------
22124: -- 4219869 Business Flow
22125: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22126: -- Prior Entry. Currently, the following code is always generated.
22127: ------------------------------------------------------------------------------------------------
22128: XLA_AE_LINES_PKG.ValidateCurrentLine;
22129:
22124: -- 4219869 Business Flow
22125: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22126: -- Prior Entry. Currently, the following code is always generated.
22127: ------------------------------------------------------------------------------------------------
22128: XLA_AE_LINES_PKG.ValidateCurrentLine;
22129:
22130: ------------------------------------------------------------------------------------
22131: -- 4219869 Business Flow
22132: -- Populated credit and debit amounts -- Need to generate this within IF
22130: ------------------------------------------------------------------------------------
22131: -- 4219869 Business Flow
22132: -- Populated credit and debit amounts -- Need to generate this within IF
22133: ------------------------------------------------------------------------------------
22134: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22135:
22136: ----------------------------------------------------------------------------------
22137: -- 4219869 Business Flow
22138: -- Update journal entry status -- Need to generate this within IF
22162: -- To allow MPA report to determine if it should generate report process
22163: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22164: ------------------------------------------------------------------------------------------
22165:
22166: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22167: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22168: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22169: -- call ADRs
22170: -- Bug 4922099
22163: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22164: ------------------------------------------------------------------------------------------
22165:
22166: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22167: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22168: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22169: -- call ADRs
22170: -- Bug 4922099
22171: --
22187: , x_value_type_code => l_adr_value_type_code
22188: , p_side => 'NA'
22189: );
22190:
22191: xla_ae_lines_pkg.set_ccid(
22192: p_code_combination_id => l_ccid
22193: , p_value_type_code => l_adr_value_type_code
22194: , p_transaction_coa_id => l_adr_transaction_coa_id
22195: , p_accounting_coa_id => l_adr_accounting_coa_id
22210:
22211: --
22212: -- Update the line information that should be overwritten
22213: --
22214: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22215: p_header_num => 1);
22216: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22217:
22218: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22212: -- Update the line information that should be overwritten
22213: --
22214: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22215: p_header_num => 1);
22216: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22217:
22218: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22219:
22220: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22214: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22215: p_header_num => 1);
22216: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22217:
22218: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22219:
22220: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22221: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22222: END IF;
22217:
22218: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22219:
22220: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22221: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22222: END IF;
22223:
22224: --
22225: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22224: --
22225: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22226: --
22227: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
22228: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
22229: ELSE
22230: ---------------------------------------------------------------------------------------------------
22231: -- 4262811a Switch Sign
22232: ---------------------------------------------------------------------------------------------------
22229: ELSE
22230: ---------------------------------------------------------------------------------------------------
22231: -- 4262811a Switch Sign
22232: ---------------------------------------------------------------------------------------------------
22233: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22234: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22235: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22236: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22237: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22230: ---------------------------------------------------------------------------------------------------
22231: -- 4262811a Switch Sign
22232: ---------------------------------------------------------------------------------------------------
22233: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22234: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22235: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22236: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22237: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22238: -- 5132302
22231: -- 4262811a Switch Sign
22232: ---------------------------------------------------------------------------------------------------
22233: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22234: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22235: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22236: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22237: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22238: -- 5132302
22239: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22232: ---------------------------------------------------------------------------------------------------
22233: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22234: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22235: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22236: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22237: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22238: -- 5132302
22239: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22240: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22233: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22234: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22235: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22236: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22237: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22238: -- 5132302
22239: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22240: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22241:
22235: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22236: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22237: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22238: -- 5132302
22239: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22240: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22241:
22242: END IF;
22243:
22236: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22237: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22238: -- 5132302
22239: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22240: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22241:
22242: END IF;
22243:
22244: -- 4955764
22241:
22242: END IF;
22243:
22244: -- 4955764
22245: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22246: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22247:
22248:
22249: XLA_AE_LINES_PKG.ValidateCurrentLine;
22245: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22246: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22247:
22248:
22249: XLA_AE_LINES_PKG.ValidateCurrentLine;
22250: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22251:
22252: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22253: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22246: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22247:
22248:
22249: XLA_AE_LINES_PKG.ValidateCurrentLine;
22250: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22251:
22252: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22253: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22254: ,p_balance_type_code => l_balance_type_code);
22387: --
22388: -- bulk performance
22389: --
22390: l_balance_type_code VARCHAR2(1);
22391: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
22392: l_log_module VARCHAR2(240);
22393:
22394: --
22395: -- Upgrade strategy
22455: ') = 'TAX'
22456: THEN
22457:
22458: --
22459: XLA_AE_LINES_PKG.SetNewLine;
22460:
22461: p_balance_type_code := l_balance_type_code;
22462: -- set the flag so later we will know whether the gain loss line needs to be created
22463:
22467:
22468: --
22469: -- bulk performance
22470: --
22471: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
22472: p_header_num => 0); -- 4262811
22473: --
22474: -- set accounting line options
22475: --
22472: p_header_num => 0); -- 4262811
22473: --
22474: -- set accounting line options
22475: --
22476: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
22477: p_natural_side_code => 'C'
22478: , p_gain_or_loss_flag => 'N'
22479: , p_gl_transfer_mode_code => 'S'
22480: , p_acct_entry_type_code => 'A'
22486: --
22487: --
22488: -- set accounting line type info
22489: --
22490: xla_ae_lines_pkg.SetAcctLineType
22491: (p_component_type => l_component_type
22492: ,p_event_type_code => l_event_type_code
22493: ,p_line_definition_owner_code => l_line_definition_owner_code
22494: ,p_line_definition_code => l_line_definition_code
22500: ,p_event_class_code => l_event_class_code);
22501: --
22502: -- set accounting class
22503: --
22504: xla_ae_lines_pkg.SetAcctClass(
22505: p_accounting_class_code => 'TAX'
22506: , p_ae_header_id => l_ae_header_id
22507: );
22508:
22508:
22509: --
22510: -- set rounding class
22511: --
22512: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22513: 'RECEIVABLE';
22514:
22515: --
22516: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22512: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22513: 'RECEIVABLE';
22514:
22515: --
22516: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22517: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22518: --
22519: -- bulk performance
22520: --
22513: 'RECEIVABLE';
22514:
22515: --
22516: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22517: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22518: --
22519: -- bulk performance
22520: --
22521: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22517: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22518: --
22519: -- bulk performance
22520: --
22521: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22522:
22523: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22524: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22525:
22519: -- bulk performance
22520: --
22521: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22522:
22523: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22524: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22525:
22526: -- 4955764
22527: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22523: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22524: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22525:
22526: -- 4955764
22527: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22528: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
22529:
22530: -- 4458381 Public Sector Enh
22531:
22559: l_rec_acct_attrs.array_char_value(11) := p_source_32;
22560: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
22561: l_rec_acct_attrs.array_num_value(12) := p_source_55;
22562:
22563: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22564: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22565:
22566: ---------------------------------------------------------------------------------------------------------------
22567: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22560: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
22561: l_rec_acct_attrs.array_num_value(12) := p_source_55;
22562:
22563: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22564: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22565:
22566: ---------------------------------------------------------------------------------------------------------------
22567: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22568: ---------------------------------------------------------------------------------------------------------------
22563: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22564: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22565:
22566: ---------------------------------------------------------------------------------------------------------------
22567: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22568: ---------------------------------------------------------------------------------------------------------------
22569: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22570:
22571: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22565:
22566: ---------------------------------------------------------------------------------------------------------------
22567: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22568: ---------------------------------------------------------------------------------------------------------------
22569: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22570:
22571: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22572: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22573:
22567: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22568: ---------------------------------------------------------------------------------------------------------------
22569: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22570:
22571: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22572: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22573:
22574: IF xla_accounting_cache_pkg.GetValueChar
22575: (p_source_code => 'LEDGER_CATEGORY_CODE'
22568: ---------------------------------------------------------------------------------------------------------------
22569: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22570:
22571: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22572: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22573:
22574: IF xla_accounting_cache_pkg.GetValueChar
22575: (p_source_code => 'LEDGER_CATEGORY_CODE'
22576: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
22579: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
22580: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
22581: )
22582: THEN
22583: xla_ae_lines_pkg.BflowUpgEntry
22584: (p_business_method_code => l_bflow_method_code
22585: ,p_business_class_code => l_bflow_class_code
22586: ,p_balance_type => l_balance_type_code);
22587: ELSE
22619: , x_value_type_code => l_adr_value_type_code
22620: , p_side => 'NA'
22621: );
22622:
22623: xla_ae_lines_pkg.set_ccid(
22624: p_code_combination_id => l_ccid
22625: , p_value_type_code => l_adr_value_type_code
22626: , p_transaction_coa_id => l_adr_transaction_coa_id
22627: , p_accounting_coa_id => l_adr_accounting_coa_id
22655: xla_accounting_err_pkg.build_message
22656: (p_appli_s_name => 'XLA'
22657: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
22658: ,p_token_1 => 'LINE_NUMBER'
22659: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
22660: ,p_token_2 => 'LINE_TYPE_NAME'
22661: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
22662: l_component_type
22663: ,l_component_code
22691: --
22692: --
22693: ------------------------------------------------------------------------------------------------
22694: -- 4219869 Business Flow
22695: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22696: -- Prior Entry. Currently, the following code is always generated.
22697: ------------------------------------------------------------------------------------------------
22698: XLA_AE_LINES_PKG.ValidateCurrentLine;
22699:
22694: -- 4219869 Business Flow
22695: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22696: -- Prior Entry. Currently, the following code is always generated.
22697: ------------------------------------------------------------------------------------------------
22698: XLA_AE_LINES_PKG.ValidateCurrentLine;
22699:
22700: ------------------------------------------------------------------------------------
22701: -- 4219869 Business Flow
22702: -- Populated credit and debit amounts -- Need to generate this within IF
22700: ------------------------------------------------------------------------------------
22701: -- 4219869 Business Flow
22702: -- Populated credit and debit amounts -- Need to generate this within IF
22703: ------------------------------------------------------------------------------------
22704: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22705:
22706: ----------------------------------------------------------------------------------
22707: -- 4219869 Business Flow
22708: -- Update journal entry status -- Need to generate this within IF
22732: -- To allow MPA report to determine if it should generate report process
22733: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22734: ------------------------------------------------------------------------------------------
22735:
22736: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22737: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22738: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22739: -- call ADRs
22740: -- Bug 4922099
22733: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22734: ------------------------------------------------------------------------------------------
22735:
22736: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22737: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22738: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22739: -- call ADRs
22740: -- Bug 4922099
22741: --
22757: , x_value_type_code => l_adr_value_type_code
22758: , p_side => 'NA'
22759: );
22760:
22761: xla_ae_lines_pkg.set_ccid(
22762: p_code_combination_id => l_ccid
22763: , p_value_type_code => l_adr_value_type_code
22764: , p_transaction_coa_id => l_adr_transaction_coa_id
22765: , p_accounting_coa_id => l_adr_accounting_coa_id
22780:
22781: --
22782: -- Update the line information that should be overwritten
22783: --
22784: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22785: p_header_num => 1);
22786: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22787:
22788: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22782: -- Update the line information that should be overwritten
22783: --
22784: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22785: p_header_num => 1);
22786: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22787:
22788: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22789:
22790: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22784: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22785: p_header_num => 1);
22786: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22787:
22788: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22789:
22790: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22791: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22792: END IF;
22787:
22788: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22789:
22790: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22791: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22792: END IF;
22793:
22794: --
22795: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22794: --
22795: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22796: --
22797: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
22798: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
22799: ELSE
22800: ---------------------------------------------------------------------------------------------------
22801: -- 4262811a Switch Sign
22802: ---------------------------------------------------------------------------------------------------
22799: ELSE
22800: ---------------------------------------------------------------------------------------------------
22801: -- 4262811a Switch Sign
22802: ---------------------------------------------------------------------------------------------------
22803: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22804: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22806: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22800: ---------------------------------------------------------------------------------------------------
22801: -- 4262811a Switch Sign
22802: ---------------------------------------------------------------------------------------------------
22803: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22804: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22806: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22808: -- 5132302
22801: -- 4262811a Switch Sign
22802: ---------------------------------------------------------------------------------------------------
22803: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22804: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22806: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22808: -- 5132302
22809: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22802: ---------------------------------------------------------------------------------------------------
22803: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22804: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22806: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22808: -- 5132302
22809: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22810: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22803: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22804: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22806: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22808: -- 5132302
22809: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22810: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22811:
22805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22806: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22808: -- 5132302
22809: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22810: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22811:
22812: END IF;
22813:
22806: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22808: -- 5132302
22809: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22810: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22811:
22812: END IF;
22813:
22814: -- 4955764
22811:
22812: END IF;
22813:
22814: -- 4955764
22815: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22816: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22817:
22818:
22819: XLA_AE_LINES_PKG.ValidateCurrentLine;
22815: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22816: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22817:
22818:
22819: XLA_AE_LINES_PKG.ValidateCurrentLine;
22820: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22821:
22822: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22823: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22816: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22817:
22818:
22819: XLA_AE_LINES_PKG.ValidateCurrentLine;
22820: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22821:
22822: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22823: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22824: ,p_balance_type_code => l_balance_type_code);
22957: --
22958: -- bulk performance
22959: --
22960: l_balance_type_code VARCHAR2(1);
22961: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
22962: l_log_module VARCHAR2(240);
22963:
22964: --
22965: -- Upgrade strategy
23025: ') = 'UNBILL'
23026: THEN
23027:
23028: --
23029: XLA_AE_LINES_PKG.SetNewLine;
23030:
23031: p_balance_type_code := l_balance_type_code;
23032: -- set the flag so later we will know whether the gain loss line needs to be created
23033:
23037:
23038: --
23039: -- bulk performance
23040: --
23041: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
23042: p_header_num => 0); -- 4262811
23043: --
23044: -- set accounting line options
23045: --
23042: p_header_num => 0); -- 4262811
23043: --
23044: -- set accounting line options
23045: --
23046: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
23047: p_natural_side_code => 'D'
23048: , p_gain_or_loss_flag => 'N'
23049: , p_gl_transfer_mode_code => 'S'
23050: , p_acct_entry_type_code => 'A'
23056: --
23057: --
23058: -- set accounting line type info
23059: --
23060: xla_ae_lines_pkg.SetAcctLineType
23061: (p_component_type => l_component_type
23062: ,p_event_type_code => l_event_type_code
23063: ,p_line_definition_owner_code => l_line_definition_owner_code
23064: ,p_line_definition_code => l_line_definition_code
23070: ,p_event_class_code => l_event_class_code);
23071: --
23072: -- set accounting class
23073: --
23074: xla_ae_lines_pkg.SetAcctClass(
23075: p_accounting_class_code => 'UNBILL'
23076: , p_ae_header_id => l_ae_header_id
23077: );
23078:
23078:
23079: --
23080: -- set rounding class
23081: --
23082: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23083: 'RECEIVABLE';
23084:
23085: --
23086: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23082: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23083: 'RECEIVABLE';
23084:
23085: --
23086: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23087: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23088: --
23089: -- bulk performance
23090: --
23083: 'RECEIVABLE';
23084:
23085: --
23086: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23087: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23088: --
23089: -- bulk performance
23090: --
23091: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23087: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23088: --
23089: -- bulk performance
23090: --
23091: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23092:
23093: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23094: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23095:
23089: -- bulk performance
23090: --
23091: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23092:
23093: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23094: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23095:
23096: -- 4955764
23097: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23093: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23094: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23095:
23096: -- 4955764
23097: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23098: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
23099:
23100: -- 4458381 Public Sector Enh
23101:
23129: l_rec_acct_attrs.array_char_value(11) := p_source_32;
23130: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23131: l_rec_acct_attrs.array_num_value(12) := p_source_55;
23132:
23133: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23134: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23135:
23136: ---------------------------------------------------------------------------------------------------------------
23137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23130: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23131: l_rec_acct_attrs.array_num_value(12) := p_source_55;
23132:
23133: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23134: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23135:
23136: ---------------------------------------------------------------------------------------------------------------
23137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23138: ---------------------------------------------------------------------------------------------------------------
23133: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23134: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23135:
23136: ---------------------------------------------------------------------------------------------------------------
23137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23138: ---------------------------------------------------------------------------------------------------------------
23139: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23140:
23141: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23135:
23136: ---------------------------------------------------------------------------------------------------------------
23137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23138: ---------------------------------------------------------------------------------------------------------------
23139: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23140:
23141: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23142: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23143:
23137: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23138: ---------------------------------------------------------------------------------------------------------------
23139: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23140:
23141: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23142: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23143:
23144: IF xla_accounting_cache_pkg.GetValueChar
23145: (p_source_code => 'LEDGER_CATEGORY_CODE'
23138: ---------------------------------------------------------------------------------------------------------------
23139: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23140:
23141: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23142: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23143:
23144: IF xla_accounting_cache_pkg.GetValueChar
23145: (p_source_code => 'LEDGER_CATEGORY_CODE'
23146: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
23149: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
23150: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
23151: )
23152: THEN
23153: xla_ae_lines_pkg.BflowUpgEntry
23154: (p_business_method_code => l_bflow_method_code
23155: ,p_business_class_code => l_bflow_class_code
23156: ,p_balance_type => l_balance_type_code);
23157: ELSE
23189: , x_value_type_code => l_adr_value_type_code
23190: , p_side => 'NA'
23191: );
23192:
23193: xla_ae_lines_pkg.set_ccid(
23194: p_code_combination_id => l_ccid
23195: , p_value_type_code => l_adr_value_type_code
23196: , p_transaction_coa_id => l_adr_transaction_coa_id
23197: , p_accounting_coa_id => l_adr_accounting_coa_id
23225: xla_accounting_err_pkg.build_message
23226: (p_appli_s_name => 'XLA'
23227: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
23228: ,p_token_1 => 'LINE_NUMBER'
23229: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
23230: ,p_token_2 => 'LINE_TYPE_NAME'
23231: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
23232: l_component_type
23233: ,l_component_code
23261: --
23262: --
23263: ------------------------------------------------------------------------------------------------
23264: -- 4219869 Business Flow
23265: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23266: -- Prior Entry. Currently, the following code is always generated.
23267: ------------------------------------------------------------------------------------------------
23268: XLA_AE_LINES_PKG.ValidateCurrentLine;
23269:
23264: -- 4219869 Business Flow
23265: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23266: -- Prior Entry. Currently, the following code is always generated.
23267: ------------------------------------------------------------------------------------------------
23268: XLA_AE_LINES_PKG.ValidateCurrentLine;
23269:
23270: ------------------------------------------------------------------------------------
23271: -- 4219869 Business Flow
23272: -- Populated credit and debit amounts -- Need to generate this within IF
23270: ------------------------------------------------------------------------------------
23271: -- 4219869 Business Flow
23272: -- Populated credit and debit amounts -- Need to generate this within IF
23273: ------------------------------------------------------------------------------------
23274: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23275:
23276: ----------------------------------------------------------------------------------
23277: -- 4219869 Business Flow
23278: -- Update journal entry status -- Need to generate this within IF
23302: -- To allow MPA report to determine if it should generate report process
23303: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23304: ------------------------------------------------------------------------------------------
23305:
23306: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23307: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23308: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23309: -- call ADRs
23310: -- Bug 4922099
23303: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23304: ------------------------------------------------------------------------------------------
23305:
23306: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23307: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23308: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23309: -- call ADRs
23310: -- Bug 4922099
23311: --
23327: , x_value_type_code => l_adr_value_type_code
23328: , p_side => 'NA'
23329: );
23330:
23331: xla_ae_lines_pkg.set_ccid(
23332: p_code_combination_id => l_ccid
23333: , p_value_type_code => l_adr_value_type_code
23334: , p_transaction_coa_id => l_adr_transaction_coa_id
23335: , p_accounting_coa_id => l_adr_accounting_coa_id
23350:
23351: --
23352: -- Update the line information that should be overwritten
23353: --
23354: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23355: p_header_num => 1);
23356: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23357:
23358: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23352: -- Update the line information that should be overwritten
23353: --
23354: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23355: p_header_num => 1);
23356: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23357:
23358: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23359:
23360: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23354: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23355: p_header_num => 1);
23356: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23357:
23358: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23359:
23360: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23361: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23362: END IF;
23357:
23358: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23359:
23360: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23361: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23362: END IF;
23363:
23364: --
23365: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23364: --
23365: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23366: --
23367: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
23368: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
23369: ELSE
23370: ---------------------------------------------------------------------------------------------------
23371: -- 4262811a Switch Sign
23372: ---------------------------------------------------------------------------------------------------
23369: ELSE
23370: ---------------------------------------------------------------------------------------------------
23371: -- 4262811a Switch Sign
23372: ---------------------------------------------------------------------------------------------------
23373: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23374: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23375: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23376: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23377: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23370: ---------------------------------------------------------------------------------------------------
23371: -- 4262811a Switch Sign
23372: ---------------------------------------------------------------------------------------------------
23373: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23374: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23375: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23376: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23377: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23378: -- 5132302
23371: -- 4262811a Switch Sign
23372: ---------------------------------------------------------------------------------------------------
23373: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23374: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23375: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23376: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23377: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23378: -- 5132302
23379: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23372: ---------------------------------------------------------------------------------------------------
23373: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23374: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23375: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23376: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23377: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23378: -- 5132302
23379: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23380: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23373: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23374: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23375: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23376: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23377: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23378: -- 5132302
23379: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23380: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23381:
23375: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23376: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23377: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23378: -- 5132302
23379: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23380: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23381:
23382: END IF;
23383:
23376: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23377: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23378: -- 5132302
23379: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23380: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23381:
23382: END IF;
23383:
23384: -- 4955764
23381:
23382: END IF;
23383:
23384: -- 4955764
23385: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23386: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23387:
23388:
23389: XLA_AE_LINES_PKG.ValidateCurrentLine;
23385: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23386: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23387:
23388:
23389: XLA_AE_LINES_PKG.ValidateCurrentLine;
23390: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23391:
23392: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23393: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23386: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23387:
23388:
23389: XLA_AE_LINES_PKG.ValidateCurrentLine;
23390: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23391:
23392: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23393: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23394: ,p_balance_type_code => l_balance_type_code);
23527: --
23528: -- bulk performance
23529: --
23530: l_balance_type_code VARCHAR2(1);
23531: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
23532: l_log_module VARCHAR2(240);
23533:
23534: --
23535: -- Upgrade strategy
23595: ') = 'UNEARN'
23596: THEN
23597:
23598: --
23599: XLA_AE_LINES_PKG.SetNewLine;
23600:
23601: p_balance_type_code := l_balance_type_code;
23602: -- set the flag so later we will know whether the gain loss line needs to be created
23603:
23607:
23608: --
23609: -- bulk performance
23610: --
23611: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
23612: p_header_num => 0); -- 4262811
23613: --
23614: -- set accounting line options
23615: --
23612: p_header_num => 0); -- 4262811
23613: --
23614: -- set accounting line options
23615: --
23616: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
23617: p_natural_side_code => 'C'
23618: , p_gain_or_loss_flag => 'N'
23619: , p_gl_transfer_mode_code => 'S'
23620: , p_acct_entry_type_code => 'A'
23626: --
23627: --
23628: -- set accounting line type info
23629: --
23630: xla_ae_lines_pkg.SetAcctLineType
23631: (p_component_type => l_component_type
23632: ,p_event_type_code => l_event_type_code
23633: ,p_line_definition_owner_code => l_line_definition_owner_code
23634: ,p_line_definition_code => l_line_definition_code
23640: ,p_event_class_code => l_event_class_code);
23641: --
23642: -- set accounting class
23643: --
23644: xla_ae_lines_pkg.SetAcctClass(
23645: p_accounting_class_code => 'UNEARNED_REVENUE'
23646: , p_ae_header_id => l_ae_header_id
23647: );
23648:
23648:
23649: --
23650: -- set rounding class
23651: --
23652: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23653: 'RECEIVABLE';
23654:
23655: --
23656: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23652: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23653: 'RECEIVABLE';
23654:
23655: --
23656: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23657: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23658: --
23659: -- bulk performance
23660: --
23653: 'RECEIVABLE';
23654:
23655: --
23656: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23657: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23658: --
23659: -- bulk performance
23660: --
23661: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23657: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23658: --
23659: -- bulk performance
23660: --
23661: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23662:
23663: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23664: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23665:
23659: -- bulk performance
23660: --
23661: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23662:
23663: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23664: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23665:
23666: -- 4955764
23667: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23663: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23664: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23665:
23666: -- 4955764
23667: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23668: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
23669:
23670: -- 4458381 Public Sector Enh
23671:
23699: l_rec_acct_attrs.array_char_value(11) := p_source_32;
23700: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23701: l_rec_acct_attrs.array_num_value(12) := p_source_55;
23702:
23703: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23704: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23705:
23706: ---------------------------------------------------------------------------------------------------------------
23707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23700: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23701: l_rec_acct_attrs.array_num_value(12) := p_source_55;
23702:
23703: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23704: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23705:
23706: ---------------------------------------------------------------------------------------------------------------
23707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23708: ---------------------------------------------------------------------------------------------------------------
23703: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23704: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23705:
23706: ---------------------------------------------------------------------------------------------------------------
23707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23708: ---------------------------------------------------------------------------------------------------------------
23709: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23710:
23711: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23705:
23706: ---------------------------------------------------------------------------------------------------------------
23707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23708: ---------------------------------------------------------------------------------------------------------------
23709: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23710:
23711: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23712: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23713:
23707: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23708: ---------------------------------------------------------------------------------------------------------------
23709: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23710:
23711: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23712: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23713:
23714: IF xla_accounting_cache_pkg.GetValueChar
23715: (p_source_code => 'LEDGER_CATEGORY_CODE'
23708: ---------------------------------------------------------------------------------------------------------------
23709: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23710:
23711: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23712: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23713:
23714: IF xla_accounting_cache_pkg.GetValueChar
23715: (p_source_code => 'LEDGER_CATEGORY_CODE'
23716: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
23719: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
23720: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
23721: )
23722: THEN
23723: xla_ae_lines_pkg.BflowUpgEntry
23724: (p_business_method_code => l_bflow_method_code
23725: ,p_business_class_code => l_bflow_class_code
23726: ,p_balance_type => l_balance_type_code);
23727: ELSE
23759: , x_value_type_code => l_adr_value_type_code
23760: , p_side => 'NA'
23761: );
23762:
23763: xla_ae_lines_pkg.set_ccid(
23764: p_code_combination_id => l_ccid
23765: , p_value_type_code => l_adr_value_type_code
23766: , p_transaction_coa_id => l_adr_transaction_coa_id
23767: , p_accounting_coa_id => l_adr_accounting_coa_id
23795: xla_accounting_err_pkg.build_message
23796: (p_appli_s_name => 'XLA'
23797: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
23798: ,p_token_1 => 'LINE_NUMBER'
23799: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
23800: ,p_token_2 => 'LINE_TYPE_NAME'
23801: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
23802: l_component_type
23803: ,l_component_code
23831: --
23832: --
23833: ------------------------------------------------------------------------------------------------
23834: -- 4219869 Business Flow
23835: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23836: -- Prior Entry. Currently, the following code is always generated.
23837: ------------------------------------------------------------------------------------------------
23838: XLA_AE_LINES_PKG.ValidateCurrentLine;
23839:
23834: -- 4219869 Business Flow
23835: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23836: -- Prior Entry. Currently, the following code is always generated.
23837: ------------------------------------------------------------------------------------------------
23838: XLA_AE_LINES_PKG.ValidateCurrentLine;
23839:
23840: ------------------------------------------------------------------------------------
23841: -- 4219869 Business Flow
23842: -- Populated credit and debit amounts -- Need to generate this within IF
23840: ------------------------------------------------------------------------------------
23841: -- 4219869 Business Flow
23842: -- Populated credit and debit amounts -- Need to generate this within IF
23843: ------------------------------------------------------------------------------------
23844: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23845:
23846: ----------------------------------------------------------------------------------
23847: -- 4219869 Business Flow
23848: -- Update journal entry status -- Need to generate this within IF
23872: -- To allow MPA report to determine if it should generate report process
23873: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23874: ------------------------------------------------------------------------------------------
23875:
23876: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23877: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23878: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23879: -- call ADRs
23880: -- Bug 4922099
23873: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23874: ------------------------------------------------------------------------------------------
23875:
23876: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23877: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23878: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23879: -- call ADRs
23880: -- Bug 4922099
23881: --
23897: , x_value_type_code => l_adr_value_type_code
23898: , p_side => 'NA'
23899: );
23900:
23901: xla_ae_lines_pkg.set_ccid(
23902: p_code_combination_id => l_ccid
23903: , p_value_type_code => l_adr_value_type_code
23904: , p_transaction_coa_id => l_adr_transaction_coa_id
23905: , p_accounting_coa_id => l_adr_accounting_coa_id
23920:
23921: --
23922: -- Update the line information that should be overwritten
23923: --
23924: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23925: p_header_num => 1);
23926: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23927:
23928: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23922: -- Update the line information that should be overwritten
23923: --
23924: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23925: p_header_num => 1);
23926: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23927:
23928: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23929:
23930: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23924: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23925: p_header_num => 1);
23926: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23927:
23928: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23929:
23930: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23931: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23932: END IF;
23927:
23928: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23929:
23930: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23931: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23932: END IF;
23933:
23934: --
23935: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23934: --
23935: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23936: --
23937: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
23938: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
23939: ELSE
23940: ---------------------------------------------------------------------------------------------------
23941: -- 4262811a Switch Sign
23942: ---------------------------------------------------------------------------------------------------
23939: ELSE
23940: ---------------------------------------------------------------------------------------------------
23941: -- 4262811a Switch Sign
23942: ---------------------------------------------------------------------------------------------------
23943: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23944: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23946: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23947: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23940: ---------------------------------------------------------------------------------------------------
23941: -- 4262811a Switch Sign
23942: ---------------------------------------------------------------------------------------------------
23943: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23944: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23946: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23947: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23948: -- 5132302
23941: -- 4262811a Switch Sign
23942: ---------------------------------------------------------------------------------------------------
23943: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23944: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23946: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23947: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23948: -- 5132302
23949: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23942: ---------------------------------------------------------------------------------------------------
23943: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23944: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23946: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23947: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23948: -- 5132302
23949: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23950: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23943: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23944: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23946: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23947: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23948: -- 5132302
23949: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23950: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23951:
23945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23946: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23947: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23948: -- 5132302
23949: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23950: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23951:
23952: END IF;
23953:
23946: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23947: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23948: -- 5132302
23949: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23950: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23951:
23952: END IF;
23953:
23954: -- 4955764
23951:
23952: END IF;
23953:
23954: -- 4955764
23955: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23956: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23957:
23958:
23959: XLA_AE_LINES_PKG.ValidateCurrentLine;
23955: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23956: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23957:
23958:
23959: XLA_AE_LINES_PKG.ValidateCurrentLine;
23960: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23961:
23962: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23963: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23956: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23957:
23958:
23959: XLA_AE_LINES_PKG.ValidateCurrentLine;
23960: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23961:
23962: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23963: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23964: ,p_balance_type_code => l_balance_type_code);
24103: --
24104: -- bulk performance
24105: --
24106: l_balance_type_code VARCHAR2(1);
24107: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
24108: l_log_module VARCHAR2(240);
24109:
24110: --
24111: -- Upgrade strategy
24175: ') = 'Y'
24176: THEN
24177:
24178: --
24179: XLA_AE_LINES_PKG.SetNewLine;
24180:
24181: p_balance_type_code := l_balance_type_code;
24182: -- set the flag so later we will know whether the gain loss line needs to be created
24183:
24187:
24188: --
24189: -- bulk performance
24190: --
24191: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
24192: p_header_num => 0); -- 4262811
24193: --
24194: -- set accounting line options
24195: --
24192: p_header_num => 0); -- 4262811
24193: --
24194: -- set accounting line options
24195: --
24196: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
24197: p_natural_side_code => 'C'
24198: , p_gain_or_loss_flag => 'N'
24199: , p_gl_transfer_mode_code => 'S'
24200: , p_acct_entry_type_code => 'A'
24206: --
24207: --
24208: -- set accounting line type info
24209: --
24210: xla_ae_lines_pkg.SetAcctLineType
24211: (p_component_type => l_component_type
24212: ,p_event_type_code => l_event_type_code
24213: ,p_line_definition_owner_code => l_line_definition_owner_code
24214: ,p_line_definition_code => l_line_definition_code
24220: ,p_event_class_code => l_event_class_code);
24221: --
24222: -- set accounting class
24223: --
24224: xla_ae_lines_pkg.SetAcctClass(
24225: p_accounting_class_code => 'FV_REC_CR'
24226: , p_ae_header_id => l_ae_header_id
24227: );
24228:
24228:
24229: --
24230: -- set rounding class
24231: --
24232: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24233: 'RECEIVABLE';
24234:
24235: --
24236: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24232: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24233: 'RECEIVABLE';
24234:
24235: --
24236: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24237: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24238: --
24239: -- bulk performance
24240: --
24233: 'RECEIVABLE';
24234:
24235: --
24236: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24237: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24238: --
24239: -- bulk performance
24240: --
24241: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24237: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24238: --
24239: -- bulk performance
24240: --
24241: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24242:
24243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24244: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24245:
24239: -- bulk performance
24240: --
24241: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24242:
24243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24244: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24245:
24246: -- 4955764
24247: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24243: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24244: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24245:
24246: -- 4955764
24247: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24248: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
24249:
24250: -- 4458381 Public Sector Enh
24251:
24279: l_rec_acct_attrs.array_char_value(11) := p_source_32;
24280: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
24281: l_rec_acct_attrs.array_num_value(12) := p_source_55;
24282:
24283: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24284: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24285:
24286: ---------------------------------------------------------------------------------------------------------------
24287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24280: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
24281: l_rec_acct_attrs.array_num_value(12) := p_source_55;
24282:
24283: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24284: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24285:
24286: ---------------------------------------------------------------------------------------------------------------
24287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24288: ---------------------------------------------------------------------------------------------------------------
24283: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24284: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24285:
24286: ---------------------------------------------------------------------------------------------------------------
24287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24288: ---------------------------------------------------------------------------------------------------------------
24289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24290:
24291: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24285:
24286: ---------------------------------------------------------------------------------------------------------------
24287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24288: ---------------------------------------------------------------------------------------------------------------
24289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24290:
24291: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24292: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24293:
24287: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24288: ---------------------------------------------------------------------------------------------------------------
24289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24290:
24291: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24292: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24293:
24294: IF xla_accounting_cache_pkg.GetValueChar
24295: (p_source_code => 'LEDGER_CATEGORY_CODE'
24288: ---------------------------------------------------------------------------------------------------------------
24289: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24290:
24291: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24292: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24293:
24294: IF xla_accounting_cache_pkg.GetValueChar
24295: (p_source_code => 'LEDGER_CATEGORY_CODE'
24296: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
24299: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
24300: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
24301: )
24302: THEN
24303: xla_ae_lines_pkg.BflowUpgEntry
24304: (p_business_method_code => l_bflow_method_code
24305: ,p_business_class_code => l_bflow_class_code
24306: ,p_balance_type => l_balance_type_code);
24307: ELSE
24339: , x_value_type_code => l_adr_value_type_code
24340: , p_side => 'NA'
24341: );
24342:
24343: xla_ae_lines_pkg.set_ccid(
24344: p_code_combination_id => l_ccid
24345: , p_value_type_code => l_adr_value_type_code
24346: , p_transaction_coa_id => l_adr_transaction_coa_id
24347: , p_accounting_coa_id => l_adr_accounting_coa_id
24373: );
24374:
24375: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
24376:
24377: xla_ae_lines_pkg.set_segment(
24378: p_to_segment_code => 'GL_ACCOUNT'
24379: , p_segment_value => l_segment
24380: , p_from_segment_code => l_adr_value_segment_code
24381: , p_from_combination_id => l_adr_value_combination_id
24417: xla_accounting_err_pkg.build_message
24418: (p_appli_s_name => 'XLA'
24419: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
24420: ,p_token_1 => 'LINE_NUMBER'
24421: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
24422: ,p_token_2 => 'LINE_TYPE_NAME'
24423: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
24424: l_component_type
24425: ,l_component_code
24453: --
24454: --
24455: ------------------------------------------------------------------------------------------------
24456: -- 4219869 Business Flow
24457: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24458: -- Prior Entry. Currently, the following code is always generated.
24459: ------------------------------------------------------------------------------------------------
24460: XLA_AE_LINES_PKG.ValidateCurrentLine;
24461:
24456: -- 4219869 Business Flow
24457: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24458: -- Prior Entry. Currently, the following code is always generated.
24459: ------------------------------------------------------------------------------------------------
24460: XLA_AE_LINES_PKG.ValidateCurrentLine;
24461:
24462: ------------------------------------------------------------------------------------
24463: -- 4219869 Business Flow
24464: -- Populated credit and debit amounts -- Need to generate this within IF
24462: ------------------------------------------------------------------------------------
24463: -- 4219869 Business Flow
24464: -- Populated credit and debit amounts -- Need to generate this within IF
24465: ------------------------------------------------------------------------------------
24466: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24467:
24468: ----------------------------------------------------------------------------------
24469: -- 4219869 Business Flow
24470: -- Update journal entry status -- Need to generate this within IF
24494: -- To allow MPA report to determine if it should generate report process
24495: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24496: ------------------------------------------------------------------------------------------
24497:
24498: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24499: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24500: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24501: -- call ADRs
24502: -- Bug 4922099
24495: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24496: ------------------------------------------------------------------------------------------
24497:
24498: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24499: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24500: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24501: -- call ADRs
24502: -- Bug 4922099
24503: --
24519: , x_value_type_code => l_adr_value_type_code
24520: , p_side => 'NA'
24521: );
24522:
24523: xla_ae_lines_pkg.set_ccid(
24524: p_code_combination_id => l_ccid
24525: , p_value_type_code => l_adr_value_type_code
24526: , p_transaction_coa_id => l_adr_transaction_coa_id
24527: , p_accounting_coa_id => l_adr_accounting_coa_id
24553: );
24554:
24555: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
24556:
24557: xla_ae_lines_pkg.set_segment(
24558: p_to_segment_code => 'GL_ACCOUNT'
24559: , p_segment_value => l_segment
24560: , p_from_segment_code => l_adr_value_segment_code
24561: , p_from_combination_id => l_adr_value_combination_id
24584:
24585: --
24586: -- Update the line information that should be overwritten
24587: --
24588: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24589: p_header_num => 1);
24590: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24591:
24592: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24586: -- Update the line information that should be overwritten
24587: --
24588: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24589: p_header_num => 1);
24590: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24591:
24592: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24593:
24594: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24588: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24589: p_header_num => 1);
24590: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24591:
24592: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24593:
24594: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24595: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24596: END IF;
24591:
24592: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24593:
24594: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24595: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24596: END IF;
24597:
24598: --
24599: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24598: --
24599: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24600: --
24601: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
24602: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
24603: ELSE
24604: ---------------------------------------------------------------------------------------------------
24605: -- 4262811a Switch Sign
24606: ---------------------------------------------------------------------------------------------------
24603: ELSE
24604: ---------------------------------------------------------------------------------------------------
24605: -- 4262811a Switch Sign
24606: ---------------------------------------------------------------------------------------------------
24607: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24611: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24604: ---------------------------------------------------------------------------------------------------
24605: -- 4262811a Switch Sign
24606: ---------------------------------------------------------------------------------------------------
24607: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24611: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24612: -- 5132302
24605: -- 4262811a Switch Sign
24606: ---------------------------------------------------------------------------------------------------
24607: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24611: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24612: -- 5132302
24613: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24606: ---------------------------------------------------------------------------------------------------
24607: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24611: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24612: -- 5132302
24613: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24614: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24607: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24611: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24612: -- 5132302
24613: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24614: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24615:
24609: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24611: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24612: -- 5132302
24613: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24614: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24615:
24616: END IF;
24617:
24610: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24611: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24612: -- 5132302
24613: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24614: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24615:
24616: END IF;
24617:
24618: -- 4955764
24615:
24616: END IF;
24617:
24618: -- 4955764
24619: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24620: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24621:
24622:
24623: XLA_AE_LINES_PKG.ValidateCurrentLine;
24619: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24620: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24621:
24622:
24623: XLA_AE_LINES_PKG.ValidateCurrentLine;
24624: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24625:
24626: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24627: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24620: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24621:
24622:
24623: XLA_AE_LINES_PKG.ValidateCurrentLine;
24624: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24625:
24626: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24627: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24628: ,p_balance_type_code => l_balance_type_code);
24767: --
24768: -- bulk performance
24769: --
24770: l_balance_type_code VARCHAR2(1);
24771: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
24772: l_log_module VARCHAR2(240);
24773:
24774: --
24775: -- Upgrade strategy
24839: ') = 'Y'
24840: THEN
24841:
24842: --
24843: XLA_AE_LINES_PKG.SetNewLine;
24844:
24845: p_balance_type_code := l_balance_type_code;
24846: -- set the flag so later we will know whether the gain loss line needs to be created
24847:
24851:
24852: --
24853: -- bulk performance
24854: --
24855: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
24856: p_header_num => 0); -- 4262811
24857: --
24858: -- set accounting line options
24859: --
24856: p_header_num => 0); -- 4262811
24857: --
24858: -- set accounting line options
24859: --
24860: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
24861: p_natural_side_code => 'D'
24862: , p_gain_or_loss_flag => 'N'
24863: , p_gl_transfer_mode_code => 'S'
24864: , p_acct_entry_type_code => 'A'
24870: --
24871: --
24872: -- set accounting line type info
24873: --
24874: xla_ae_lines_pkg.SetAcctLineType
24875: (p_component_type => l_component_type
24876: ,p_event_type_code => l_event_type_code
24877: ,p_line_definition_owner_code => l_line_definition_owner_code
24878: ,p_line_definition_code => l_line_definition_code
24884: ,p_event_class_code => l_event_class_code);
24885: --
24886: -- set accounting class
24887: --
24888: xla_ae_lines_pkg.SetAcctClass(
24889: p_accounting_class_code => 'FV_REC_DR'
24890: , p_ae_header_id => l_ae_header_id
24891: );
24892:
24892:
24893: --
24894: -- set rounding class
24895: --
24896: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24897: 'RECEIVABLE';
24898:
24899: --
24900: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24896: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24897: 'RECEIVABLE';
24898:
24899: --
24900: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24901: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24902: --
24903: -- bulk performance
24904: --
24897: 'RECEIVABLE';
24898:
24899: --
24900: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24901: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24902: --
24903: -- bulk performance
24904: --
24905: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24901: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24902: --
24903: -- bulk performance
24904: --
24905: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24906:
24907: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24908: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24909:
24903: -- bulk performance
24904: --
24905: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24906:
24907: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24908: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24909:
24910: -- 4955764
24911: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24907: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24908: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24909:
24910: -- 4955764
24911: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24912: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
24913:
24914: -- 4458381 Public Sector Enh
24915:
24943: l_rec_acct_attrs.array_char_value(11) := p_source_32;
24944: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
24945: l_rec_acct_attrs.array_num_value(12) := p_source_55;
24946:
24947: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24948: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24949:
24950: ---------------------------------------------------------------------------------------------------------------
24951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24944: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
24945: l_rec_acct_attrs.array_num_value(12) := p_source_55;
24946:
24947: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24948: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24949:
24950: ---------------------------------------------------------------------------------------------------------------
24951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24952: ---------------------------------------------------------------------------------------------------------------
24947: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24948: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24949:
24950: ---------------------------------------------------------------------------------------------------------------
24951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24952: ---------------------------------------------------------------------------------------------------------------
24953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24954:
24955: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24949:
24950: ---------------------------------------------------------------------------------------------------------------
24951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24952: ---------------------------------------------------------------------------------------------------------------
24953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24954:
24955: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24956: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24957:
24951: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24952: ---------------------------------------------------------------------------------------------------------------
24953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24954:
24955: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24956: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24957:
24958: IF xla_accounting_cache_pkg.GetValueChar
24959: (p_source_code => 'LEDGER_CATEGORY_CODE'
24952: ---------------------------------------------------------------------------------------------------------------
24953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24954:
24955: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24956: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24957:
24958: IF xla_accounting_cache_pkg.GetValueChar
24959: (p_source_code => 'LEDGER_CATEGORY_CODE'
24960: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
24963: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
24964: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
24965: )
24966: THEN
24967: xla_ae_lines_pkg.BflowUpgEntry
24968: (p_business_method_code => l_bflow_method_code
24969: ,p_business_class_code => l_bflow_class_code
24970: ,p_balance_type => l_balance_type_code);
24971: ELSE
25003: , x_value_type_code => l_adr_value_type_code
25004: , p_side => 'NA'
25005: );
25006:
25007: xla_ae_lines_pkg.set_ccid(
25008: p_code_combination_id => l_ccid
25009: , p_value_type_code => l_adr_value_type_code
25010: , p_transaction_coa_id => l_adr_transaction_coa_id
25011: , p_accounting_coa_id => l_adr_accounting_coa_id
25037: );
25038:
25039: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25040:
25041: xla_ae_lines_pkg.set_segment(
25042: p_to_segment_code => 'GL_ACCOUNT'
25043: , p_segment_value => l_segment
25044: , p_from_segment_code => l_adr_value_segment_code
25045: , p_from_combination_id => l_adr_value_combination_id
25081: xla_accounting_err_pkg.build_message
25082: (p_appli_s_name => 'XLA'
25083: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
25084: ,p_token_1 => 'LINE_NUMBER'
25085: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
25086: ,p_token_2 => 'LINE_TYPE_NAME'
25087: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
25088: l_component_type
25089: ,l_component_code
25117: --
25118: --
25119: ------------------------------------------------------------------------------------------------
25120: -- 4219869 Business Flow
25121: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25122: -- Prior Entry. Currently, the following code is always generated.
25123: ------------------------------------------------------------------------------------------------
25124: XLA_AE_LINES_PKG.ValidateCurrentLine;
25125:
25120: -- 4219869 Business Flow
25121: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25122: -- Prior Entry. Currently, the following code is always generated.
25123: ------------------------------------------------------------------------------------------------
25124: XLA_AE_LINES_PKG.ValidateCurrentLine;
25125:
25126: ------------------------------------------------------------------------------------
25127: -- 4219869 Business Flow
25128: -- Populated credit and debit amounts -- Need to generate this within IF
25126: ------------------------------------------------------------------------------------
25127: -- 4219869 Business Flow
25128: -- Populated credit and debit amounts -- Need to generate this within IF
25129: ------------------------------------------------------------------------------------
25130: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25131:
25132: ----------------------------------------------------------------------------------
25133: -- 4219869 Business Flow
25134: -- Update journal entry status -- Need to generate this within IF
25158: -- To allow MPA report to determine if it should generate report process
25159: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25160: ------------------------------------------------------------------------------------------
25161:
25162: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25163: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25164: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25165: -- call ADRs
25166: -- Bug 4922099
25159: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25160: ------------------------------------------------------------------------------------------
25161:
25162: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25163: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25164: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25165: -- call ADRs
25166: -- Bug 4922099
25167: --
25183: , x_value_type_code => l_adr_value_type_code
25184: , p_side => 'NA'
25185: );
25186:
25187: xla_ae_lines_pkg.set_ccid(
25188: p_code_combination_id => l_ccid
25189: , p_value_type_code => l_adr_value_type_code
25190: , p_transaction_coa_id => l_adr_transaction_coa_id
25191: , p_accounting_coa_id => l_adr_accounting_coa_id
25217: );
25218:
25219: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25220:
25221: xla_ae_lines_pkg.set_segment(
25222: p_to_segment_code => 'GL_ACCOUNT'
25223: , p_segment_value => l_segment
25224: , p_from_segment_code => l_adr_value_segment_code
25225: , p_from_combination_id => l_adr_value_combination_id
25248:
25249: --
25250: -- Update the line information that should be overwritten
25251: --
25252: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25253: p_header_num => 1);
25254: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25255:
25256: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25250: -- Update the line information that should be overwritten
25251: --
25252: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25253: p_header_num => 1);
25254: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25255:
25256: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25257:
25258: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25252: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25253: p_header_num => 1);
25254: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25255:
25256: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25257:
25258: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25259: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25260: END IF;
25255:
25256: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25257:
25258: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25259: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25260: END IF;
25261:
25262: --
25263: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25262: --
25263: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25264: --
25265: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
25266: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
25267: ELSE
25268: ---------------------------------------------------------------------------------------------------
25269: -- 4262811a Switch Sign
25270: ---------------------------------------------------------------------------------------------------
25267: ELSE
25268: ---------------------------------------------------------------------------------------------------
25269: -- 4262811a Switch Sign
25270: ---------------------------------------------------------------------------------------------------
25271: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25272: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25273: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25274: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25275: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25268: ---------------------------------------------------------------------------------------------------
25269: -- 4262811a Switch Sign
25270: ---------------------------------------------------------------------------------------------------
25271: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25272: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25273: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25274: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25275: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25276: -- 5132302
25269: -- 4262811a Switch Sign
25270: ---------------------------------------------------------------------------------------------------
25271: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25272: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25273: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25274: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25275: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25276: -- 5132302
25277: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25270: ---------------------------------------------------------------------------------------------------
25271: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25272: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25273: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25274: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25275: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25276: -- 5132302
25277: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25278: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25271: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25272: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25273: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25274: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25275: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25276: -- 5132302
25277: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25278: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25279:
25273: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25274: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25275: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25276: -- 5132302
25277: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25278: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25279:
25280: END IF;
25281:
25274: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25275: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25276: -- 5132302
25277: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25278: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25279:
25280: END IF;
25281:
25282: -- 4955764
25279:
25280: END IF;
25281:
25282: -- 4955764
25283: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25284: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25285:
25286:
25287: XLA_AE_LINES_PKG.ValidateCurrentLine;
25283: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25284: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25285:
25286:
25287: XLA_AE_LINES_PKG.ValidateCurrentLine;
25288: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25289:
25290: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25291: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25284: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25285:
25286:
25287: XLA_AE_LINES_PKG.ValidateCurrentLine;
25288: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25289:
25290: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25291: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25292: ,p_balance_type_code => l_balance_type_code);
25425: --
25426: -- bulk performance
25427: --
25428: l_balance_type_code VARCHAR2(1);
25429: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
25430: l_log_module VARCHAR2(240);
25431:
25432: --
25433: -- Upgrade strategy
25505: ') = 'Y'
25506: THEN
25507:
25508: --
25509: XLA_AE_LINES_PKG.SetNewLine;
25510:
25511: p_balance_type_code := l_balance_type_code;
25512: -- set the flag so later we will know whether the gain loss line needs to be created
25513:
25517:
25518: --
25519: -- bulk performance
25520: --
25521: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
25522: p_header_num => 0); -- 4262811
25523: --
25524: -- set accounting line options
25525: --
25522: p_header_num => 0); -- 4262811
25523: --
25524: -- set accounting line options
25525: --
25526: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
25527: p_natural_side_code => 'C'
25528: , p_gain_or_loss_flag => 'N'
25529: , p_gl_transfer_mode_code => 'S'
25530: , p_acct_entry_type_code => 'A'
25536: --
25537: --
25538: -- set accounting line type info
25539: --
25540: xla_ae_lines_pkg.SetAcctLineType
25541: (p_component_type => l_component_type
25542: ,p_event_type_code => l_event_type_code
25543: ,p_line_definition_owner_code => l_line_definition_owner_code
25544: ,p_line_definition_code => l_line_definition_code
25550: ,p_event_class_code => l_event_class_code);
25551: --
25552: -- set accounting class
25553: --
25554: xla_ae_lines_pkg.SetAcctClass(
25555: p_accounting_class_code => 'FV_MISCCASH_CR'
25556: , p_ae_header_id => l_ae_header_id
25557: );
25558:
25558:
25559: --
25560: -- set rounding class
25561: --
25562: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25563: 'RECEIVABLE';
25564:
25565: --
25566: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25562: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25563: 'RECEIVABLE';
25564:
25565: --
25566: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25567: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25568: --
25569: -- bulk performance
25570: --
25563: 'RECEIVABLE';
25564:
25565: --
25566: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25567: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25568: --
25569: -- bulk performance
25570: --
25571: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25567: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25568: --
25569: -- bulk performance
25570: --
25571: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25572:
25573: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25574: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25575:
25569: -- bulk performance
25570: --
25571: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25572:
25573: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25574: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25575:
25576: -- 4955764
25577: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25573: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25574: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25575:
25576: -- 4955764
25577: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25578: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
25579:
25580: -- 4458381 Public Sector Enh
25581:
25601: l_rec_acct_attrs.array_char_value(7) := p_source_28;
25602: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
25603: l_rec_acct_attrs.array_num_value(8) := p_source_29;
25604:
25605: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25606: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25607:
25608: ---------------------------------------------------------------------------------------------------------------
25609: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25602: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
25603: l_rec_acct_attrs.array_num_value(8) := p_source_29;
25604:
25605: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25606: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25607:
25608: ---------------------------------------------------------------------------------------------------------------
25609: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25610: ---------------------------------------------------------------------------------------------------------------
25605: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25606: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25607:
25608: ---------------------------------------------------------------------------------------------------------------
25609: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25610: ---------------------------------------------------------------------------------------------------------------
25611: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25612:
25613: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25607:
25608: ---------------------------------------------------------------------------------------------------------------
25609: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25610: ---------------------------------------------------------------------------------------------------------------
25611: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25612:
25613: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25614: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25615:
25609: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25610: ---------------------------------------------------------------------------------------------------------------
25611: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25612:
25613: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25614: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25615:
25616: IF xla_accounting_cache_pkg.GetValueChar
25617: (p_source_code => 'LEDGER_CATEGORY_CODE'
25610: ---------------------------------------------------------------------------------------------------------------
25611: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25612:
25613: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25614: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25615:
25616: IF xla_accounting_cache_pkg.GetValueChar
25617: (p_source_code => 'LEDGER_CATEGORY_CODE'
25618: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
25621: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
25622: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
25623: )
25624: THEN
25625: xla_ae_lines_pkg.BflowUpgEntry
25626: (p_business_method_code => l_bflow_method_code
25627: ,p_business_class_code => l_bflow_class_code
25628: ,p_balance_type => l_balance_type_code);
25629: ELSE
25661: , x_value_type_code => l_adr_value_type_code
25662: , p_side => 'NA'
25663: );
25664:
25665: xla_ae_lines_pkg.set_ccid(
25666: p_code_combination_id => l_ccid
25667: , p_value_type_code => l_adr_value_type_code
25668: , p_transaction_coa_id => l_adr_transaction_coa_id
25669: , p_accounting_coa_id => l_adr_accounting_coa_id
25696: );
25697:
25698: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25699:
25700: xla_ae_lines_pkg.set_segment(
25701: p_to_segment_code => 'GL_ACCOUNT'
25702: , p_segment_value => l_segment
25703: , p_from_segment_code => l_adr_value_segment_code
25704: , p_from_combination_id => l_adr_value_combination_id
25740: xla_accounting_err_pkg.build_message
25741: (p_appli_s_name => 'XLA'
25742: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
25743: ,p_token_1 => 'LINE_NUMBER'
25744: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
25745: ,p_token_2 => 'LINE_TYPE_NAME'
25746: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
25747: l_component_type
25748: ,l_component_code
25776: --
25777: --
25778: ------------------------------------------------------------------------------------------------
25779: -- 4219869 Business Flow
25780: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25781: -- Prior Entry. Currently, the following code is always generated.
25782: ------------------------------------------------------------------------------------------------
25783: XLA_AE_LINES_PKG.ValidateCurrentLine;
25784:
25779: -- 4219869 Business Flow
25780: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25781: -- Prior Entry. Currently, the following code is always generated.
25782: ------------------------------------------------------------------------------------------------
25783: XLA_AE_LINES_PKG.ValidateCurrentLine;
25784:
25785: ------------------------------------------------------------------------------------
25786: -- 4219869 Business Flow
25787: -- Populated credit and debit amounts -- Need to generate this within IF
25785: ------------------------------------------------------------------------------------
25786: -- 4219869 Business Flow
25787: -- Populated credit and debit amounts -- Need to generate this within IF
25788: ------------------------------------------------------------------------------------
25789: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25790:
25791: ----------------------------------------------------------------------------------
25792: -- 4219869 Business Flow
25793: -- Update journal entry status -- Need to generate this within IF
25817: -- To allow MPA report to determine if it should generate report process
25818: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25819: ------------------------------------------------------------------------------------------
25820:
25821: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25822: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25823: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25824: -- call ADRs
25825: -- Bug 4922099
25818: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25819: ------------------------------------------------------------------------------------------
25820:
25821: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25822: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25823: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25824: -- call ADRs
25825: -- Bug 4922099
25826: --
25842: , x_value_type_code => l_adr_value_type_code
25843: , p_side => 'NA'
25844: );
25845:
25846: xla_ae_lines_pkg.set_ccid(
25847: p_code_combination_id => l_ccid
25848: , p_value_type_code => l_adr_value_type_code
25849: , p_transaction_coa_id => l_adr_transaction_coa_id
25850: , p_accounting_coa_id => l_adr_accounting_coa_id
25877: );
25878:
25879: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25880:
25881: xla_ae_lines_pkg.set_segment(
25882: p_to_segment_code => 'GL_ACCOUNT'
25883: , p_segment_value => l_segment
25884: , p_from_segment_code => l_adr_value_segment_code
25885: , p_from_combination_id => l_adr_value_combination_id
25908:
25909: --
25910: -- Update the line information that should be overwritten
25911: --
25912: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25913: p_header_num => 1);
25914: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25915:
25916: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25910: -- Update the line information that should be overwritten
25911: --
25912: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25913: p_header_num => 1);
25914: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25915:
25916: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25917:
25918: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25912: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25913: p_header_num => 1);
25914: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25915:
25916: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25917:
25918: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25919: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25920: END IF;
25915:
25916: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25917:
25918: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25919: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25920: END IF;
25921:
25922: --
25923: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25922: --
25923: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25924: --
25925: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
25926: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
25927: ELSE
25928: ---------------------------------------------------------------------------------------------------
25929: -- 4262811a Switch Sign
25930: ---------------------------------------------------------------------------------------------------
25927: ELSE
25928: ---------------------------------------------------------------------------------------------------
25929: -- 4262811a Switch Sign
25930: ---------------------------------------------------------------------------------------------------
25931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25928: ---------------------------------------------------------------------------------------------------
25929: -- 4262811a Switch Sign
25930: ---------------------------------------------------------------------------------------------------
25931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25936: -- 5132302
25929: -- 4262811a Switch Sign
25930: ---------------------------------------------------------------------------------------------------
25931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25936: -- 5132302
25937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25930: ---------------------------------------------------------------------------------------------------
25931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25936: -- 5132302
25937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25938: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25936: -- 5132302
25937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25938: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25939:
25933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25936: -- 5132302
25937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25938: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25939:
25940: END IF;
25941:
25934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25936: -- 5132302
25937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25938: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25939:
25940: END IF;
25941:
25942: -- 4955764
25939:
25940: END IF;
25941:
25942: -- 4955764
25943: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25944: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25945:
25946:
25947: XLA_AE_LINES_PKG.ValidateCurrentLine;
25943: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25944: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25945:
25946:
25947: XLA_AE_LINES_PKG.ValidateCurrentLine;
25948: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25949:
25950: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25951: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25944: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25945:
25946:
25947: XLA_AE_LINES_PKG.ValidateCurrentLine;
25948: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25949:
25950: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25951: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25952: ,p_balance_type_code => l_balance_type_code);
26085: --
26086: -- bulk performance
26087: --
26088: l_balance_type_code VARCHAR2(1);
26089: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
26090: l_log_module VARCHAR2(240);
26091:
26092: --
26093: -- Upgrade strategy
26165: ') = 'Y'
26166: THEN
26167:
26168: --
26169: XLA_AE_LINES_PKG.SetNewLine;
26170:
26171: p_balance_type_code := l_balance_type_code;
26172: -- set the flag so later we will know whether the gain loss line needs to be created
26173:
26177:
26178: --
26179: -- bulk performance
26180: --
26181: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
26182: p_header_num => 0); -- 4262811
26183: --
26184: -- set accounting line options
26185: --
26182: p_header_num => 0); -- 4262811
26183: --
26184: -- set accounting line options
26185: --
26186: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
26187: p_natural_side_code => 'D'
26188: , p_gain_or_loss_flag => 'N'
26189: , p_gl_transfer_mode_code => 'S'
26190: , p_acct_entry_type_code => 'A'
26196: --
26197: --
26198: -- set accounting line type info
26199: --
26200: xla_ae_lines_pkg.SetAcctLineType
26201: (p_component_type => l_component_type
26202: ,p_event_type_code => l_event_type_code
26203: ,p_line_definition_owner_code => l_line_definition_owner_code
26204: ,p_line_definition_code => l_line_definition_code
26210: ,p_event_class_code => l_event_class_code);
26211: --
26212: -- set accounting class
26213: --
26214: xla_ae_lines_pkg.SetAcctClass(
26215: p_accounting_class_code => 'FV_MISCCASH_DR'
26216: , p_ae_header_id => l_ae_header_id
26217: );
26218:
26218:
26219: --
26220: -- set rounding class
26221: --
26222: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26223: 'RECEIVABLE';
26224:
26225: --
26226: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26222: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26223: 'RECEIVABLE';
26224:
26225: --
26226: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26227: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26228: --
26229: -- bulk performance
26230: --
26223: 'RECEIVABLE';
26224:
26225: --
26226: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26227: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26228: --
26229: -- bulk performance
26230: --
26231: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26227: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26228: --
26229: -- bulk performance
26230: --
26231: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26232:
26233: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26234: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26235:
26229: -- bulk performance
26230: --
26231: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26232:
26233: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26234: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26235:
26236: -- 4955764
26237: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26233: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26234: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26235:
26236: -- 4955764
26237: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26238: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
26239:
26240: -- 4458381 Public Sector Enh
26241:
26261: l_rec_acct_attrs.array_char_value(7) := p_source_28;
26262: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26263: l_rec_acct_attrs.array_num_value(8) := p_source_29;
26264:
26265: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26266: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26267:
26268: ---------------------------------------------------------------------------------------------------------------
26269: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26262: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26263: l_rec_acct_attrs.array_num_value(8) := p_source_29;
26264:
26265: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26266: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26267:
26268: ---------------------------------------------------------------------------------------------------------------
26269: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26270: ---------------------------------------------------------------------------------------------------------------
26265: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26266: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26267:
26268: ---------------------------------------------------------------------------------------------------------------
26269: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26270: ---------------------------------------------------------------------------------------------------------------
26271: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26272:
26273: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26267:
26268: ---------------------------------------------------------------------------------------------------------------
26269: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26270: ---------------------------------------------------------------------------------------------------------------
26271: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26272:
26273: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26274: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26275:
26269: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26270: ---------------------------------------------------------------------------------------------------------------
26271: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26272:
26273: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26274: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26275:
26276: IF xla_accounting_cache_pkg.GetValueChar
26277: (p_source_code => 'LEDGER_CATEGORY_CODE'
26270: ---------------------------------------------------------------------------------------------------------------
26271: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26272:
26273: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26274: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26275:
26276: IF xla_accounting_cache_pkg.GetValueChar
26277: (p_source_code => 'LEDGER_CATEGORY_CODE'
26278: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
26281: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
26282: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
26283: )
26284: THEN
26285: xla_ae_lines_pkg.BflowUpgEntry
26286: (p_business_method_code => l_bflow_method_code
26287: ,p_business_class_code => l_bflow_class_code
26288: ,p_balance_type => l_balance_type_code);
26289: ELSE
26321: , x_value_type_code => l_adr_value_type_code
26322: , p_side => 'NA'
26323: );
26324:
26325: xla_ae_lines_pkg.set_ccid(
26326: p_code_combination_id => l_ccid
26327: , p_value_type_code => l_adr_value_type_code
26328: , p_transaction_coa_id => l_adr_transaction_coa_id
26329: , p_accounting_coa_id => l_adr_accounting_coa_id
26356: );
26357:
26358: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
26359:
26360: xla_ae_lines_pkg.set_segment(
26361: p_to_segment_code => 'GL_ACCOUNT'
26362: , p_segment_value => l_segment
26363: , p_from_segment_code => l_adr_value_segment_code
26364: , p_from_combination_id => l_adr_value_combination_id
26400: xla_accounting_err_pkg.build_message
26401: (p_appli_s_name => 'XLA'
26402: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
26403: ,p_token_1 => 'LINE_NUMBER'
26404: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
26405: ,p_token_2 => 'LINE_TYPE_NAME'
26406: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
26407: l_component_type
26408: ,l_component_code
26436: --
26437: --
26438: ------------------------------------------------------------------------------------------------
26439: -- 4219869 Business Flow
26440: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26441: -- Prior Entry. Currently, the following code is always generated.
26442: ------------------------------------------------------------------------------------------------
26443: XLA_AE_LINES_PKG.ValidateCurrentLine;
26444:
26439: -- 4219869 Business Flow
26440: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26441: -- Prior Entry. Currently, the following code is always generated.
26442: ------------------------------------------------------------------------------------------------
26443: XLA_AE_LINES_PKG.ValidateCurrentLine;
26444:
26445: ------------------------------------------------------------------------------------
26446: -- 4219869 Business Flow
26447: -- Populated credit and debit amounts -- Need to generate this within IF
26445: ------------------------------------------------------------------------------------
26446: -- 4219869 Business Flow
26447: -- Populated credit and debit amounts -- Need to generate this within IF
26448: ------------------------------------------------------------------------------------
26449: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26450:
26451: ----------------------------------------------------------------------------------
26452: -- 4219869 Business Flow
26453: -- Update journal entry status -- Need to generate this within IF
26477: -- To allow MPA report to determine if it should generate report process
26478: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26479: ------------------------------------------------------------------------------------------
26480:
26481: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26482: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26483: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26484: -- call ADRs
26485: -- Bug 4922099
26478: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26479: ------------------------------------------------------------------------------------------
26480:
26481: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26482: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26483: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26484: -- call ADRs
26485: -- Bug 4922099
26486: --
26502: , x_value_type_code => l_adr_value_type_code
26503: , p_side => 'NA'
26504: );
26505:
26506: xla_ae_lines_pkg.set_ccid(
26507: p_code_combination_id => l_ccid
26508: , p_value_type_code => l_adr_value_type_code
26509: , p_transaction_coa_id => l_adr_transaction_coa_id
26510: , p_accounting_coa_id => l_adr_accounting_coa_id
26537: );
26538:
26539: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
26540:
26541: xla_ae_lines_pkg.set_segment(
26542: p_to_segment_code => 'GL_ACCOUNT'
26543: , p_segment_value => l_segment
26544: , p_from_segment_code => l_adr_value_segment_code
26545: , p_from_combination_id => l_adr_value_combination_id
26568:
26569: --
26570: -- Update the line information that should be overwritten
26571: --
26572: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26573: p_header_num => 1);
26574: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26575:
26576: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26570: -- Update the line information that should be overwritten
26571: --
26572: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26573: p_header_num => 1);
26574: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26575:
26576: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26577:
26578: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26572: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26573: p_header_num => 1);
26574: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26575:
26576: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26577:
26578: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26579: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26580: END IF;
26575:
26576: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26577:
26578: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26579: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26580: END IF;
26581:
26582: --
26583: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26582: --
26583: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26584: --
26585: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
26586: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
26587: ELSE
26588: ---------------------------------------------------------------------------------------------------
26589: -- 4262811a Switch Sign
26590: ---------------------------------------------------------------------------------------------------
26587: ELSE
26588: ---------------------------------------------------------------------------------------------------
26589: -- 4262811a Switch Sign
26590: ---------------------------------------------------------------------------------------------------
26591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26588: ---------------------------------------------------------------------------------------------------
26589: -- 4262811a Switch Sign
26590: ---------------------------------------------------------------------------------------------------
26591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26596: -- 5132302
26589: -- 4262811a Switch Sign
26590: ---------------------------------------------------------------------------------------------------
26591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26596: -- 5132302
26597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26590: ---------------------------------------------------------------------------------------------------
26591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26596: -- 5132302
26597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26598: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26596: -- 5132302
26597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26598: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26599:
26593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26596: -- 5132302
26597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26598: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26599:
26600: END IF;
26601:
26594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26596: -- 5132302
26597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26598: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26599:
26600: END IF;
26601:
26602: -- 4955764
26599:
26600: END IF;
26601:
26602: -- 4955764
26603: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26604: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26605:
26606:
26607: XLA_AE_LINES_PKG.ValidateCurrentLine;
26603: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26604: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26605:
26606:
26607: XLA_AE_LINES_PKG.ValidateCurrentLine;
26608: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26609:
26610: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26611: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26604: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26605:
26606:
26607: XLA_AE_LINES_PKG.ValidateCurrentLine;
26608: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26609:
26610: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26611: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26612: ,p_balance_type_code => l_balance_type_code);
26747: --
26748: -- bulk performance
26749: --
26750: l_balance_type_code VARCHAR2(1);
26751: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
26752: l_log_module VARCHAR2(240);
26753:
26754: --
26755: -- Upgrade strategy
26833: ') = 'Y'
26834: THEN
26835:
26836: --
26837: XLA_AE_LINES_PKG.SetNewLine;
26838:
26839: p_balance_type_code := l_balance_type_code;
26840: -- set the flag so later we will know whether the gain loss line needs to be created
26841:
26845:
26846: --
26847: -- bulk performance
26848: --
26849: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
26850: p_header_num => 0); -- 4262811
26851: --
26852: -- set accounting line options
26853: --
26850: p_header_num => 0); -- 4262811
26851: --
26852: -- set accounting line options
26853: --
26854: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
26855: p_natural_side_code => 'C'
26856: , p_gain_or_loss_flag => 'N'
26857: , p_gl_transfer_mode_code => 'S'
26858: , p_acct_entry_type_code => 'A'
26864: --
26865: --
26866: -- set accounting line type info
26867: --
26868: xla_ae_lines_pkg.SetAcctLineType
26869: (p_component_type => l_component_type
26870: ,p_event_type_code => l_event_type_code
26871: ,p_line_definition_owner_code => l_line_definition_owner_code
26872: ,p_line_definition_code => l_line_definition_code
26878: ,p_event_class_code => l_event_class_code);
26879: --
26880: -- set accounting class
26881: --
26882: xla_ae_lines_pkg.SetAcctClass(
26883: p_accounting_class_code => 'FV_MISCCASH_CR'
26884: , p_ae_header_id => l_ae_header_id
26885: );
26886:
26886:
26887: --
26888: -- set rounding class
26889: --
26890: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26891: 'RECEIVABLE';
26892:
26893: --
26894: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26890: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26891: 'RECEIVABLE';
26892:
26893: --
26894: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26895: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26896: --
26897: -- bulk performance
26898: --
26891: 'RECEIVABLE';
26892:
26893: --
26894: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26895: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26896: --
26897: -- bulk performance
26898: --
26899: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26895: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26896: --
26897: -- bulk performance
26898: --
26899: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26900:
26901: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26902: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26903:
26897: -- bulk performance
26898: --
26899: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26900:
26901: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26902: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26903:
26904: -- 4955764
26905: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26901: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26902: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26903:
26904: -- 4955764
26905: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26906: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
26907:
26908: -- 4458381 Public Sector Enh
26909:
26929: l_rec_acct_attrs.array_char_value(7) := p_source_28;
26930: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26931: l_rec_acct_attrs.array_num_value(8) := p_source_29;
26932:
26933: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26934: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26935:
26936: ---------------------------------------------------------------------------------------------------------------
26937: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26930: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26931: l_rec_acct_attrs.array_num_value(8) := p_source_29;
26932:
26933: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26934: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26935:
26936: ---------------------------------------------------------------------------------------------------------------
26937: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26938: ---------------------------------------------------------------------------------------------------------------
26933: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26934: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26935:
26936: ---------------------------------------------------------------------------------------------------------------
26937: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26938: ---------------------------------------------------------------------------------------------------------------
26939: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26940:
26941: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26935:
26936: ---------------------------------------------------------------------------------------------------------------
26937: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26938: ---------------------------------------------------------------------------------------------------------------
26939: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26940:
26941: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26942: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26943:
26937: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26938: ---------------------------------------------------------------------------------------------------------------
26939: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26940:
26941: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26942: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26943:
26944: IF xla_accounting_cache_pkg.GetValueChar
26945: (p_source_code => 'LEDGER_CATEGORY_CODE'
26938: ---------------------------------------------------------------------------------------------------------------
26939: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26940:
26941: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26942: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26943:
26944: IF xla_accounting_cache_pkg.GetValueChar
26945: (p_source_code => 'LEDGER_CATEGORY_CODE'
26946: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
26949: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
26950: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
26951: )
26952: THEN
26953: xla_ae_lines_pkg.BflowUpgEntry
26954: (p_business_method_code => l_bflow_method_code
26955: ,p_business_class_code => l_bflow_class_code
26956: ,p_balance_type => l_balance_type_code);
26957: ELSE
26989: , x_value_type_code => l_adr_value_type_code
26990: , p_side => 'NA'
26991: );
26992:
26993: xla_ae_lines_pkg.set_ccid(
26994: p_code_combination_id => l_ccid
26995: , p_value_type_code => l_adr_value_type_code
26996: , p_transaction_coa_id => l_adr_transaction_coa_id
26997: , p_accounting_coa_id => l_adr_accounting_coa_id
27025: );
27026:
27027: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
27028:
27029: xla_ae_lines_pkg.set_segment(
27030: p_to_segment_code => 'GL_ACCOUNT'
27031: , p_segment_value => l_segment
27032: , p_from_segment_code => l_adr_value_segment_code
27033: , p_from_combination_id => l_adr_value_combination_id
27069: xla_accounting_err_pkg.build_message
27070: (p_appli_s_name => 'XLA'
27071: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
27072: ,p_token_1 => 'LINE_NUMBER'
27073: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
27074: ,p_token_2 => 'LINE_TYPE_NAME'
27075: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
27076: l_component_type
27077: ,l_component_code
27105: --
27106: --
27107: ------------------------------------------------------------------------------------------------
27108: -- 4219869 Business Flow
27109: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27110: -- Prior Entry. Currently, the following code is always generated.
27111: ------------------------------------------------------------------------------------------------
27112: XLA_AE_LINES_PKG.ValidateCurrentLine;
27113:
27108: -- 4219869 Business Flow
27109: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27110: -- Prior Entry. Currently, the following code is always generated.
27111: ------------------------------------------------------------------------------------------------
27112: XLA_AE_LINES_PKG.ValidateCurrentLine;
27113:
27114: ------------------------------------------------------------------------------------
27115: -- 4219869 Business Flow
27116: -- Populated credit and debit amounts -- Need to generate this within IF
27114: ------------------------------------------------------------------------------------
27115: -- 4219869 Business Flow
27116: -- Populated credit and debit amounts -- Need to generate this within IF
27117: ------------------------------------------------------------------------------------
27118: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27119:
27120: ----------------------------------------------------------------------------------
27121: -- 4219869 Business Flow
27122: -- Update journal entry status -- Need to generate this within IF
27146: -- To allow MPA report to determine if it should generate report process
27147: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27148: ------------------------------------------------------------------------------------------
27149:
27150: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27151: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27152: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27153: -- call ADRs
27154: -- Bug 4922099
27147: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27148: ------------------------------------------------------------------------------------------
27149:
27150: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27151: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27152: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27153: -- call ADRs
27154: -- Bug 4922099
27155: --
27171: , x_value_type_code => l_adr_value_type_code
27172: , p_side => 'NA'
27173: );
27174:
27175: xla_ae_lines_pkg.set_ccid(
27176: p_code_combination_id => l_ccid
27177: , p_value_type_code => l_adr_value_type_code
27178: , p_transaction_coa_id => l_adr_transaction_coa_id
27179: , p_accounting_coa_id => l_adr_accounting_coa_id
27207: );
27208:
27209: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
27210:
27211: xla_ae_lines_pkg.set_segment(
27212: p_to_segment_code => 'GL_ACCOUNT'
27213: , p_segment_value => l_segment
27214: , p_from_segment_code => l_adr_value_segment_code
27215: , p_from_combination_id => l_adr_value_combination_id
27238:
27239: --
27240: -- Update the line information that should be overwritten
27241: --
27242: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27243: p_header_num => 1);
27244: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27245:
27246: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27240: -- Update the line information that should be overwritten
27241: --
27242: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27243: p_header_num => 1);
27244: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27245:
27246: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27247:
27248: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27242: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27243: p_header_num => 1);
27244: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27245:
27246: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27247:
27248: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27249: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27250: END IF;
27245:
27246: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27247:
27248: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27249: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27250: END IF;
27251:
27252: --
27253: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27252: --
27253: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27254: --
27255: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
27256: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
27257: ELSE
27258: ---------------------------------------------------------------------------------------------------
27259: -- 4262811a Switch Sign
27260: ---------------------------------------------------------------------------------------------------
27257: ELSE
27258: ---------------------------------------------------------------------------------------------------
27259: -- 4262811a Switch Sign
27260: ---------------------------------------------------------------------------------------------------
27261: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27262: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27264: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27258: ---------------------------------------------------------------------------------------------------
27259: -- 4262811a Switch Sign
27260: ---------------------------------------------------------------------------------------------------
27261: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27262: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27264: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27266: -- 5132302
27259: -- 4262811a Switch Sign
27260: ---------------------------------------------------------------------------------------------------
27261: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27262: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27264: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27266: -- 5132302
27267: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27260: ---------------------------------------------------------------------------------------------------
27261: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27262: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27264: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27266: -- 5132302
27267: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27268: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27261: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27262: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27264: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27266: -- 5132302
27267: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27268: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27269:
27263: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27264: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27266: -- 5132302
27267: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27268: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27269:
27270: END IF;
27271:
27264: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27265: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27266: -- 5132302
27267: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27268: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27269:
27270: END IF;
27271:
27272: -- 4955764
27269:
27270: END IF;
27271:
27272: -- 4955764
27273: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27274: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27275:
27276:
27277: XLA_AE_LINES_PKG.ValidateCurrentLine;
27273: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27274: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27275:
27276:
27277: XLA_AE_LINES_PKG.ValidateCurrentLine;
27278: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27279:
27280: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27281: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27274: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27275:
27276:
27277: XLA_AE_LINES_PKG.ValidateCurrentLine;
27278: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27279:
27280: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27281: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27282: ,p_balance_type_code => l_balance_type_code);
27417: --
27418: -- bulk performance
27419: --
27420: l_balance_type_code VARCHAR2(1);
27421: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
27422: l_log_module VARCHAR2(240);
27423:
27424: --
27425: -- Upgrade strategy
27503: ') = 'Y'
27504: THEN
27505:
27506: --
27507: XLA_AE_LINES_PKG.SetNewLine;
27508:
27509: p_balance_type_code := l_balance_type_code;
27510: -- set the flag so later we will know whether the gain loss line needs to be created
27511:
27515:
27516: --
27517: -- bulk performance
27518: --
27519: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
27520: p_header_num => 0); -- 4262811
27521: --
27522: -- set accounting line options
27523: --
27520: p_header_num => 0); -- 4262811
27521: --
27522: -- set accounting line options
27523: --
27524: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
27525: p_natural_side_code => 'D'
27526: , p_gain_or_loss_flag => 'N'
27527: , p_gl_transfer_mode_code => 'S'
27528: , p_acct_entry_type_code => 'A'
27534: --
27535: --
27536: -- set accounting line type info
27537: --
27538: xla_ae_lines_pkg.SetAcctLineType
27539: (p_component_type => l_component_type
27540: ,p_event_type_code => l_event_type_code
27541: ,p_line_definition_owner_code => l_line_definition_owner_code
27542: ,p_line_definition_code => l_line_definition_code
27548: ,p_event_class_code => l_event_class_code);
27549: --
27550: -- set accounting class
27551: --
27552: xla_ae_lines_pkg.SetAcctClass(
27553: p_accounting_class_code => 'FV_MISCCASH_DR'
27554: , p_ae_header_id => l_ae_header_id
27555: );
27556:
27556:
27557: --
27558: -- set rounding class
27559: --
27560: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27561: 'RECEIVABLE';
27562:
27563: --
27564: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27560: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27561: 'RECEIVABLE';
27562:
27563: --
27564: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27565: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27566: --
27567: -- bulk performance
27568: --
27561: 'RECEIVABLE';
27562:
27563: --
27564: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27565: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27566: --
27567: -- bulk performance
27568: --
27569: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27565: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27566: --
27567: -- bulk performance
27568: --
27569: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27570:
27571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27572: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27573:
27567: -- bulk performance
27568: --
27569: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27570:
27571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27572: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27573:
27574: -- 4955764
27575: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27572: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27573:
27574: -- 4955764
27575: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27576: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
27577:
27578: -- 4458381 Public Sector Enh
27579:
27599: l_rec_acct_attrs.array_char_value(7) := p_source_28;
27600: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
27601: l_rec_acct_attrs.array_num_value(8) := p_source_29;
27602:
27603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27605:
27606: ---------------------------------------------------------------------------------------------------------------
27607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27600: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
27601: l_rec_acct_attrs.array_num_value(8) := p_source_29;
27602:
27603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27605:
27606: ---------------------------------------------------------------------------------------------------------------
27607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27608: ---------------------------------------------------------------------------------------------------------------
27603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27605:
27606: ---------------------------------------------------------------------------------------------------------------
27607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27608: ---------------------------------------------------------------------------------------------------------------
27609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27610:
27611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27605:
27606: ---------------------------------------------------------------------------------------------------------------
27607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27608: ---------------------------------------------------------------------------------------------------------------
27609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27610:
27611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27613:
27607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27608: ---------------------------------------------------------------------------------------------------------------
27609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27610:
27611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27613:
27614: IF xla_accounting_cache_pkg.GetValueChar
27615: (p_source_code => 'LEDGER_CATEGORY_CODE'
27608: ---------------------------------------------------------------------------------------------------------------
27609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27610:
27611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27613:
27614: IF xla_accounting_cache_pkg.GetValueChar
27615: (p_source_code => 'LEDGER_CATEGORY_CODE'
27616: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
27619: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
27620: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
27621: )
27622: THEN
27623: xla_ae_lines_pkg.BflowUpgEntry
27624: (p_business_method_code => l_bflow_method_code
27625: ,p_business_class_code => l_bflow_class_code
27626: ,p_balance_type => l_balance_type_code);
27627: ELSE
27659: , x_value_type_code => l_adr_value_type_code
27660: , p_side => 'NA'
27661: );
27662:
27663: xla_ae_lines_pkg.set_ccid(
27664: p_code_combination_id => l_ccid
27665: , p_value_type_code => l_adr_value_type_code
27666: , p_transaction_coa_id => l_adr_transaction_coa_id
27667: , p_accounting_coa_id => l_adr_accounting_coa_id
27695: );
27696:
27697: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
27698:
27699: xla_ae_lines_pkg.set_segment(
27700: p_to_segment_code => 'GL_ACCOUNT'
27701: , p_segment_value => l_segment
27702: , p_from_segment_code => l_adr_value_segment_code
27703: , p_from_combination_id => l_adr_value_combination_id
27739: xla_accounting_err_pkg.build_message
27740: (p_appli_s_name => 'XLA'
27741: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
27742: ,p_token_1 => 'LINE_NUMBER'
27743: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
27744: ,p_token_2 => 'LINE_TYPE_NAME'
27745: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
27746: l_component_type
27747: ,l_component_code
27775: --
27776: --
27777: ------------------------------------------------------------------------------------------------
27778: -- 4219869 Business Flow
27779: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27780: -- Prior Entry. Currently, the following code is always generated.
27781: ------------------------------------------------------------------------------------------------
27782: XLA_AE_LINES_PKG.ValidateCurrentLine;
27783:
27778: -- 4219869 Business Flow
27779: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27780: -- Prior Entry. Currently, the following code is always generated.
27781: ------------------------------------------------------------------------------------------------
27782: XLA_AE_LINES_PKG.ValidateCurrentLine;
27783:
27784: ------------------------------------------------------------------------------------
27785: -- 4219869 Business Flow
27786: -- Populated credit and debit amounts -- Need to generate this within IF
27784: ------------------------------------------------------------------------------------
27785: -- 4219869 Business Flow
27786: -- Populated credit and debit amounts -- Need to generate this within IF
27787: ------------------------------------------------------------------------------------
27788: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27789:
27790: ----------------------------------------------------------------------------------
27791: -- 4219869 Business Flow
27792: -- Update journal entry status -- Need to generate this within IF
27816: -- To allow MPA report to determine if it should generate report process
27817: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27818: ------------------------------------------------------------------------------------------
27819:
27820: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27821: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27822: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27823: -- call ADRs
27824: -- Bug 4922099
27817: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27818: ------------------------------------------------------------------------------------------
27819:
27820: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27821: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27822: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27823: -- call ADRs
27824: -- Bug 4922099
27825: --
27841: , x_value_type_code => l_adr_value_type_code
27842: , p_side => 'NA'
27843: );
27844:
27845: xla_ae_lines_pkg.set_ccid(
27846: p_code_combination_id => l_ccid
27847: , p_value_type_code => l_adr_value_type_code
27848: , p_transaction_coa_id => l_adr_transaction_coa_id
27849: , p_accounting_coa_id => l_adr_accounting_coa_id
27877: );
27878:
27879: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
27880:
27881: xla_ae_lines_pkg.set_segment(
27882: p_to_segment_code => 'GL_ACCOUNT'
27883: , p_segment_value => l_segment
27884: , p_from_segment_code => l_adr_value_segment_code
27885: , p_from_combination_id => l_adr_value_combination_id
27908:
27909: --
27910: -- Update the line information that should be overwritten
27911: --
27912: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27913: p_header_num => 1);
27914: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27915:
27916: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27910: -- Update the line information that should be overwritten
27911: --
27912: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27913: p_header_num => 1);
27914: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27915:
27916: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27917:
27918: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27912: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27913: p_header_num => 1);
27914: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27915:
27916: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27917:
27918: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27919: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27920: END IF;
27915:
27916: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27917:
27918: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27919: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27920: END IF;
27921:
27922: --
27923: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27922: --
27923: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27924: --
27925: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
27926: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
27927: ELSE
27928: ---------------------------------------------------------------------------------------------------
27929: -- 4262811a Switch Sign
27930: ---------------------------------------------------------------------------------------------------
27927: ELSE
27928: ---------------------------------------------------------------------------------------------------
27929: -- 4262811a Switch Sign
27930: ---------------------------------------------------------------------------------------------------
27931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27928: ---------------------------------------------------------------------------------------------------
27929: -- 4262811a Switch Sign
27930: ---------------------------------------------------------------------------------------------------
27931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27936: -- 5132302
27929: -- 4262811a Switch Sign
27930: ---------------------------------------------------------------------------------------------------
27931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27936: -- 5132302
27937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27930: ---------------------------------------------------------------------------------------------------
27931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27936: -- 5132302
27937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27938: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27931: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27936: -- 5132302
27937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27938: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27939:
27933: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27936: -- 5132302
27937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27938: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27939:
27940: END IF;
27941:
27934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27935: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27936: -- 5132302
27937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27938: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27939:
27940: END IF;
27941:
27942: -- 4955764
27939:
27940: END IF;
27941:
27942: -- 4955764
27943: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27944: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27945:
27946:
27947: XLA_AE_LINES_PKG.ValidateCurrentLine;
27943: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27944: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27945:
27946:
27947: XLA_AE_LINES_PKG.ValidateCurrentLine;
27948: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27949:
27950: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27951: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27944: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27945:
27946:
27947: XLA_AE_LINES_PKG.ValidateCurrentLine;
27948: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27949:
27950: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27951: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27952: ,p_balance_type_code => l_balance_type_code);
28085: --
28086: -- bulk performance
28087: --
28088: l_balance_type_code VARCHAR2(1);
28089: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
28090: l_log_module VARCHAR2(240);
28091:
28092: --
28093: -- Upgrade strategy
28163: ') = 'Y'
28164: THEN
28165:
28166: --
28167: XLA_AE_LINES_PKG.SetNewLine;
28168:
28169: p_balance_type_code := l_balance_type_code;
28170: -- set the flag so later we will know whether the gain loss line needs to be created
28171:
28175:
28176: --
28177: -- bulk performance
28178: --
28179: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
28180: p_header_num => 0); -- 4262811
28181: --
28182: -- set accounting line options
28183: --
28180: p_header_num => 0); -- 4262811
28181: --
28182: -- set accounting line options
28183: --
28184: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
28185: p_natural_side_code => 'C'
28186: , p_gain_or_loss_flag => 'N'
28187: , p_gl_transfer_mode_code => 'S'
28188: , p_acct_entry_type_code => 'A'
28194: --
28195: --
28196: -- set accounting line type info
28197: --
28198: xla_ae_lines_pkg.SetAcctLineType
28199: (p_component_type => l_component_type
28200: ,p_event_type_code => l_event_type_code
28201: ,p_line_definition_owner_code => l_line_definition_owner_code
28202: ,p_line_definition_code => l_line_definition_code
28208: ,p_event_class_code => l_event_class_code);
28209: --
28210: -- set accounting class
28211: --
28212: xla_ae_lines_pkg.SetAcctClass(
28213: p_accounting_class_code => 'FV_MISCCASH_CR'
28214: , p_ae_header_id => l_ae_header_id
28215: );
28216:
28216:
28217: --
28218: -- set rounding class
28219: --
28220: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28221: 'RECEIVABLE';
28222:
28223: --
28224: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28220: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28221: 'RECEIVABLE';
28222:
28223: --
28224: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28225: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28226: --
28227: -- bulk performance
28228: --
28221: 'RECEIVABLE';
28222:
28223: --
28224: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28225: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28226: --
28227: -- bulk performance
28228: --
28229: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28225: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28226: --
28227: -- bulk performance
28228: --
28229: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28230:
28231: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28232: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28233:
28227: -- bulk performance
28228: --
28229: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28230:
28231: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28232: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28233:
28234: -- 4955764
28235: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28231: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28232: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28233:
28234: -- 4955764
28235: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28236: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
28237:
28238: -- 4458381 Public Sector Enh
28239:
28259: l_rec_acct_attrs.array_char_value(7) := p_source_28;
28260: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
28261: l_rec_acct_attrs.array_num_value(8) := p_source_29;
28262:
28263: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28264: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28265:
28266: ---------------------------------------------------------------------------------------------------------------
28267: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28260: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
28261: l_rec_acct_attrs.array_num_value(8) := p_source_29;
28262:
28263: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28264: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28265:
28266: ---------------------------------------------------------------------------------------------------------------
28267: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28268: ---------------------------------------------------------------------------------------------------------------
28263: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28264: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28265:
28266: ---------------------------------------------------------------------------------------------------------------
28267: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28268: ---------------------------------------------------------------------------------------------------------------
28269: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28270:
28271: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28265:
28266: ---------------------------------------------------------------------------------------------------------------
28267: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28268: ---------------------------------------------------------------------------------------------------------------
28269: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28270:
28271: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28272: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28273:
28267: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28268: ---------------------------------------------------------------------------------------------------------------
28269: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28270:
28271: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28272: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28273:
28274: IF xla_accounting_cache_pkg.GetValueChar
28275: (p_source_code => 'LEDGER_CATEGORY_CODE'
28268: ---------------------------------------------------------------------------------------------------------------
28269: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28270:
28271: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28272: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28273:
28274: IF xla_accounting_cache_pkg.GetValueChar
28275: (p_source_code => 'LEDGER_CATEGORY_CODE'
28276: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
28279: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
28280: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
28281: )
28282: THEN
28283: xla_ae_lines_pkg.BflowUpgEntry
28284: (p_business_method_code => l_bflow_method_code
28285: ,p_business_class_code => l_bflow_class_code
28286: ,p_balance_type => l_balance_type_code);
28287: ELSE
28319: , x_value_type_code => l_adr_value_type_code
28320: , p_side => 'NA'
28321: );
28322:
28323: xla_ae_lines_pkg.set_ccid(
28324: p_code_combination_id => l_ccid
28325: , p_value_type_code => l_adr_value_type_code
28326: , p_transaction_coa_id => l_adr_transaction_coa_id
28327: , p_accounting_coa_id => l_adr_accounting_coa_id
28354: );
28355:
28356: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
28357:
28358: xla_ae_lines_pkg.set_segment(
28359: p_to_segment_code => 'GL_ACCOUNT'
28360: , p_segment_value => l_segment
28361: , p_from_segment_code => l_adr_value_segment_code
28362: , p_from_combination_id => l_adr_value_combination_id
28398: xla_accounting_err_pkg.build_message
28399: (p_appli_s_name => 'XLA'
28400: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
28401: ,p_token_1 => 'LINE_NUMBER'
28402: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
28403: ,p_token_2 => 'LINE_TYPE_NAME'
28404: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
28405: l_component_type
28406: ,l_component_code
28434: --
28435: --
28436: ------------------------------------------------------------------------------------------------
28437: -- 4219869 Business Flow
28438: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28439: -- Prior Entry. Currently, the following code is always generated.
28440: ------------------------------------------------------------------------------------------------
28441: XLA_AE_LINES_PKG.ValidateCurrentLine;
28442:
28437: -- 4219869 Business Flow
28438: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28439: -- Prior Entry. Currently, the following code is always generated.
28440: ------------------------------------------------------------------------------------------------
28441: XLA_AE_LINES_PKG.ValidateCurrentLine;
28442:
28443: ------------------------------------------------------------------------------------
28444: -- 4219869 Business Flow
28445: -- Populated credit and debit amounts -- Need to generate this within IF
28443: ------------------------------------------------------------------------------------
28444: -- 4219869 Business Flow
28445: -- Populated credit and debit amounts -- Need to generate this within IF
28446: ------------------------------------------------------------------------------------
28447: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28448:
28449: ----------------------------------------------------------------------------------
28450: -- 4219869 Business Flow
28451: -- Update journal entry status -- Need to generate this within IF
28475: -- To allow MPA report to determine if it should generate report process
28476: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28477: ------------------------------------------------------------------------------------------
28478:
28479: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28480: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28481: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28482: -- call ADRs
28483: -- Bug 4922099
28476: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28477: ------------------------------------------------------------------------------------------
28478:
28479: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28480: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28481: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28482: -- call ADRs
28483: -- Bug 4922099
28484: --
28500: , x_value_type_code => l_adr_value_type_code
28501: , p_side => 'NA'
28502: );
28503:
28504: xla_ae_lines_pkg.set_ccid(
28505: p_code_combination_id => l_ccid
28506: , p_value_type_code => l_adr_value_type_code
28507: , p_transaction_coa_id => l_adr_transaction_coa_id
28508: , p_accounting_coa_id => l_adr_accounting_coa_id
28535: );
28536:
28537: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
28538:
28539: xla_ae_lines_pkg.set_segment(
28540: p_to_segment_code => 'GL_ACCOUNT'
28541: , p_segment_value => l_segment
28542: , p_from_segment_code => l_adr_value_segment_code
28543: , p_from_combination_id => l_adr_value_combination_id
28566:
28567: --
28568: -- Update the line information that should be overwritten
28569: --
28570: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28571: p_header_num => 1);
28572: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28573:
28574: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28568: -- Update the line information that should be overwritten
28569: --
28570: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28571: p_header_num => 1);
28572: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28573:
28574: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28575:
28576: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28570: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28571: p_header_num => 1);
28572: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28573:
28574: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28575:
28576: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28577: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28578: END IF;
28573:
28574: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28575:
28576: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28577: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28578: END IF;
28579:
28580: --
28581: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28580: --
28581: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28582: --
28583: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
28584: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
28585: ELSE
28586: ---------------------------------------------------------------------------------------------------
28587: -- 4262811a Switch Sign
28588: ---------------------------------------------------------------------------------------------------
28585: ELSE
28586: ---------------------------------------------------------------------------------------------------
28587: -- 4262811a Switch Sign
28588: ---------------------------------------------------------------------------------------------------
28589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28586: ---------------------------------------------------------------------------------------------------
28587: -- 4262811a Switch Sign
28588: ---------------------------------------------------------------------------------------------------
28589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28594: -- 5132302
28587: -- 4262811a Switch Sign
28588: ---------------------------------------------------------------------------------------------------
28589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28594: -- 5132302
28595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28588: ---------------------------------------------------------------------------------------------------
28589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28594: -- 5132302
28595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28596: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28589: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28594: -- 5132302
28595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28596: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28597:
28591: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28594: -- 5132302
28595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28596: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28597:
28598: END IF;
28599:
28592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28593: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28594: -- 5132302
28595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28596: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28597:
28598: END IF;
28599:
28600: -- 4955764
28597:
28598: END IF;
28599:
28600: -- 4955764
28601: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28602: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28603:
28604:
28605: XLA_AE_LINES_PKG.ValidateCurrentLine;
28601: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28602: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28603:
28604:
28605: XLA_AE_LINES_PKG.ValidateCurrentLine;
28606: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28607:
28608: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28609: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28602: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28603:
28604:
28605: XLA_AE_LINES_PKG.ValidateCurrentLine;
28606: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28607:
28608: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28609: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28610: ,p_balance_type_code => l_balance_type_code);
28743: --
28744: -- bulk performance
28745: --
28746: l_balance_type_code VARCHAR2(1);
28747: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
28748: l_log_module VARCHAR2(240);
28749:
28750: --
28751: -- Upgrade strategy
28821: ') = 'Y'
28822: THEN
28823:
28824: --
28825: XLA_AE_LINES_PKG.SetNewLine;
28826:
28827: p_balance_type_code := l_balance_type_code;
28828: -- set the flag so later we will know whether the gain loss line needs to be created
28829:
28833:
28834: --
28835: -- bulk performance
28836: --
28837: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
28838: p_header_num => 0); -- 4262811
28839: --
28840: -- set accounting line options
28841: --
28838: p_header_num => 0); -- 4262811
28839: --
28840: -- set accounting line options
28841: --
28842: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
28843: p_natural_side_code => 'D'
28844: , p_gain_or_loss_flag => 'N'
28845: , p_gl_transfer_mode_code => 'S'
28846: , p_acct_entry_type_code => 'A'
28852: --
28853: --
28854: -- set accounting line type info
28855: --
28856: xla_ae_lines_pkg.SetAcctLineType
28857: (p_component_type => l_component_type
28858: ,p_event_type_code => l_event_type_code
28859: ,p_line_definition_owner_code => l_line_definition_owner_code
28860: ,p_line_definition_code => l_line_definition_code
28866: ,p_event_class_code => l_event_class_code);
28867: --
28868: -- set accounting class
28869: --
28870: xla_ae_lines_pkg.SetAcctClass(
28871: p_accounting_class_code => 'FV_MISCCASH_DR'
28872: , p_ae_header_id => l_ae_header_id
28873: );
28874:
28874:
28875: --
28876: -- set rounding class
28877: --
28878: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28879: 'RECEIVABLE';
28880:
28881: --
28882: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28878: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28879: 'RECEIVABLE';
28880:
28881: --
28882: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28883: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28884: --
28885: -- bulk performance
28886: --
28879: 'RECEIVABLE';
28880:
28881: --
28882: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28883: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28884: --
28885: -- bulk performance
28886: --
28887: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28883: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28884: --
28885: -- bulk performance
28886: --
28887: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28888:
28889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28890: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28891:
28885: -- bulk performance
28886: --
28887: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28888:
28889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28890: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28891:
28892: -- 4955764
28893: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28890: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28891:
28892: -- 4955764
28893: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28894: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
28895:
28896: -- 4458381 Public Sector Enh
28897:
28917: l_rec_acct_attrs.array_char_value(7) := p_source_28;
28918: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
28919: l_rec_acct_attrs.array_num_value(8) := p_source_29;
28920:
28921: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28922: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28923:
28924: ---------------------------------------------------------------------------------------------------------------
28925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28918: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
28919: l_rec_acct_attrs.array_num_value(8) := p_source_29;
28920:
28921: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28922: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28923:
28924: ---------------------------------------------------------------------------------------------------------------
28925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28926: ---------------------------------------------------------------------------------------------------------------
28921: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28922: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28923:
28924: ---------------------------------------------------------------------------------------------------------------
28925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28926: ---------------------------------------------------------------------------------------------------------------
28927: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28928:
28929: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28923:
28924: ---------------------------------------------------------------------------------------------------------------
28925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28926: ---------------------------------------------------------------------------------------------------------------
28927: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28928:
28929: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28930: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28931:
28925: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28926: ---------------------------------------------------------------------------------------------------------------
28927: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28928:
28929: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28930: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28931:
28932: IF xla_accounting_cache_pkg.GetValueChar
28933: (p_source_code => 'LEDGER_CATEGORY_CODE'
28926: ---------------------------------------------------------------------------------------------------------------
28927: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28928:
28929: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28930: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28931:
28932: IF xla_accounting_cache_pkg.GetValueChar
28933: (p_source_code => 'LEDGER_CATEGORY_CODE'
28934: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
28937: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
28938: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
28939: )
28940: THEN
28941: xla_ae_lines_pkg.BflowUpgEntry
28942: (p_business_method_code => l_bflow_method_code
28943: ,p_business_class_code => l_bflow_class_code
28944: ,p_balance_type => l_balance_type_code);
28945: ELSE
28977: , x_value_type_code => l_adr_value_type_code
28978: , p_side => 'NA'
28979: );
28980:
28981: xla_ae_lines_pkg.set_ccid(
28982: p_code_combination_id => l_ccid
28983: , p_value_type_code => l_adr_value_type_code
28984: , p_transaction_coa_id => l_adr_transaction_coa_id
28985: , p_accounting_coa_id => l_adr_accounting_coa_id
29012: );
29013:
29014: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
29015:
29016: xla_ae_lines_pkg.set_segment(
29017: p_to_segment_code => 'GL_ACCOUNT'
29018: , p_segment_value => l_segment
29019: , p_from_segment_code => l_adr_value_segment_code
29020: , p_from_combination_id => l_adr_value_combination_id
29056: xla_accounting_err_pkg.build_message
29057: (p_appli_s_name => 'XLA'
29058: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
29059: ,p_token_1 => 'LINE_NUMBER'
29060: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
29061: ,p_token_2 => 'LINE_TYPE_NAME'
29062: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
29063: l_component_type
29064: ,l_component_code
29092: --
29093: --
29094: ------------------------------------------------------------------------------------------------
29095: -- 4219869 Business Flow
29096: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29097: -- Prior Entry. Currently, the following code is always generated.
29098: ------------------------------------------------------------------------------------------------
29099: XLA_AE_LINES_PKG.ValidateCurrentLine;
29100:
29095: -- 4219869 Business Flow
29096: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29097: -- Prior Entry. Currently, the following code is always generated.
29098: ------------------------------------------------------------------------------------------------
29099: XLA_AE_LINES_PKG.ValidateCurrentLine;
29100:
29101: ------------------------------------------------------------------------------------
29102: -- 4219869 Business Flow
29103: -- Populated credit and debit amounts -- Need to generate this within IF
29101: ------------------------------------------------------------------------------------
29102: -- 4219869 Business Flow
29103: -- Populated credit and debit amounts -- Need to generate this within IF
29104: ------------------------------------------------------------------------------------
29105: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29106:
29107: ----------------------------------------------------------------------------------
29108: -- 4219869 Business Flow
29109: -- Update journal entry status -- Need to generate this within IF
29133: -- To allow MPA report to determine if it should generate report process
29134: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29135: ------------------------------------------------------------------------------------------
29136:
29137: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29138: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29139: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29140: -- call ADRs
29141: -- Bug 4922099
29134: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29135: ------------------------------------------------------------------------------------------
29136:
29137: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29138: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29139: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29140: -- call ADRs
29141: -- Bug 4922099
29142: --
29158: , x_value_type_code => l_adr_value_type_code
29159: , p_side => 'NA'
29160: );
29161:
29162: xla_ae_lines_pkg.set_ccid(
29163: p_code_combination_id => l_ccid
29164: , p_value_type_code => l_adr_value_type_code
29165: , p_transaction_coa_id => l_adr_transaction_coa_id
29166: , p_accounting_coa_id => l_adr_accounting_coa_id
29193: );
29194:
29195: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
29196:
29197: xla_ae_lines_pkg.set_segment(
29198: p_to_segment_code => 'GL_ACCOUNT'
29199: , p_segment_value => l_segment
29200: , p_from_segment_code => l_adr_value_segment_code
29201: , p_from_combination_id => l_adr_value_combination_id
29224:
29225: --
29226: -- Update the line information that should be overwritten
29227: --
29228: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29229: p_header_num => 1);
29230: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29231:
29232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29226: -- Update the line information that should be overwritten
29227: --
29228: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29229: p_header_num => 1);
29230: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29231:
29232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29233:
29234: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29228: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29229: p_header_num => 1);
29230: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29231:
29232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29233:
29234: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29235: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29236: END IF;
29231:
29232: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29233:
29234: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29235: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29236: END IF;
29237:
29238: --
29239: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29238: --
29239: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29240: --
29241: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
29242: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
29243: ELSE
29244: ---------------------------------------------------------------------------------------------------
29245: -- 4262811a Switch Sign
29246: ---------------------------------------------------------------------------------------------------
29243: ELSE
29244: ---------------------------------------------------------------------------------------------------
29245: -- 4262811a Switch Sign
29246: ---------------------------------------------------------------------------------------------------
29247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29244: ---------------------------------------------------------------------------------------------------
29245: -- 4262811a Switch Sign
29246: ---------------------------------------------------------------------------------------------------
29247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29252: -- 5132302
29245: -- 4262811a Switch Sign
29246: ---------------------------------------------------------------------------------------------------
29247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29252: -- 5132302
29253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29246: ---------------------------------------------------------------------------------------------------
29247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29252: -- 5132302
29253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29247: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29252: -- 5132302
29253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29255:
29249: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29252: -- 5132302
29253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29255:
29256: END IF;
29257:
29250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29251: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29252: -- 5132302
29253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29254: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29255:
29256: END IF;
29257:
29258: -- 4955764
29255:
29256: END IF;
29257:
29258: -- 4955764
29259: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29260: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29261:
29262:
29263: XLA_AE_LINES_PKG.ValidateCurrentLine;
29259: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29260: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29261:
29262:
29263: XLA_AE_LINES_PKG.ValidateCurrentLine;
29264: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29265:
29266: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29267: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29260: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29261:
29262:
29263: XLA_AE_LINES_PKG.ValidateCurrentLine;
29264: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29265:
29266: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29267: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29268: ,p_balance_type_code => l_balance_type_code);
29397: --
29398: -- bulk performance
29399: --
29400: l_balance_type_code VARCHAR2(1);
29401: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
29402: l_log_module VARCHAR2(240);
29403:
29404: --
29405: -- Upgrade strategy
29469: ') = 'Y'
29470: THEN
29471:
29472: --
29473: XLA_AE_LINES_PKG.SetNewLine;
29474:
29475: p_balance_type_code := l_balance_type_code;
29476: -- set the flag so later we will know whether the gain loss line needs to be created
29477:
29481:
29482: --
29483: -- bulk performance
29484: --
29485: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
29486: p_header_num => 0); -- 4262811
29487: --
29488: -- set accounting line options
29489: --
29486: p_header_num => 0); -- 4262811
29487: --
29488: -- set accounting line options
29489: --
29490: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
29491: p_natural_side_code => 'C'
29492: , p_gain_or_loss_flag => 'N'
29493: , p_gl_transfer_mode_code => 'S'
29494: , p_acct_entry_type_code => 'A'
29500: --
29501: --
29502: -- set accounting line type info
29503: --
29504: xla_ae_lines_pkg.SetAcctLineType
29505: (p_component_type => l_component_type
29506: ,p_event_type_code => l_event_type_code
29507: ,p_line_definition_owner_code => l_line_definition_owner_code
29508: ,p_line_definition_code => l_line_definition_code
29514: ,p_event_class_code => l_event_class_code);
29515: --
29516: -- set accounting class
29517: --
29518: xla_ae_lines_pkg.SetAcctClass(
29519: p_accounting_class_code => 'FV_MISCCASH_CR'
29520: , p_ae_header_id => l_ae_header_id
29521: );
29522:
29522:
29523: --
29524: -- set rounding class
29525: --
29526: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29527: 'RECEIVABLE';
29528:
29529: --
29530: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29526: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29527: 'RECEIVABLE';
29528:
29529: --
29530: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29531: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29532: --
29533: -- bulk performance
29534: --
29527: 'RECEIVABLE';
29528:
29529: --
29530: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29531: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29532: --
29533: -- bulk performance
29534: --
29535: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29531: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29532: --
29533: -- bulk performance
29534: --
29535: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29536:
29537: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29538: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29539:
29533: -- bulk performance
29534: --
29535: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29536:
29537: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29538: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29539:
29540: -- 4955764
29541: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29537: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29538: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29539:
29540: -- 4955764
29541: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29542: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
29543:
29544: -- 4458381 Public Sector Enh
29545:
29565: l_rec_acct_attrs.array_char_value(7) := p_source_28;
29566: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
29567: l_rec_acct_attrs.array_num_value(8) := p_source_29;
29568:
29569: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29570: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29571:
29572: ---------------------------------------------------------------------------------------------------------------
29573: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29566: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
29567: l_rec_acct_attrs.array_num_value(8) := p_source_29;
29568:
29569: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29570: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29571:
29572: ---------------------------------------------------------------------------------------------------------------
29573: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29574: ---------------------------------------------------------------------------------------------------------------
29569: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29570: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29571:
29572: ---------------------------------------------------------------------------------------------------------------
29573: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29574: ---------------------------------------------------------------------------------------------------------------
29575: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29576:
29577: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29571:
29572: ---------------------------------------------------------------------------------------------------------------
29573: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29574: ---------------------------------------------------------------------------------------------------------------
29575: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29576:
29577: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29578: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29579:
29573: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29574: ---------------------------------------------------------------------------------------------------------------
29575: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29576:
29577: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29578: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29579:
29580: IF xla_accounting_cache_pkg.GetValueChar
29581: (p_source_code => 'LEDGER_CATEGORY_CODE'
29574: ---------------------------------------------------------------------------------------------------------------
29575: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29576:
29577: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29578: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29579:
29580: IF xla_accounting_cache_pkg.GetValueChar
29581: (p_source_code => 'LEDGER_CATEGORY_CODE'
29582: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
29585: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
29586: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
29587: )
29588: THEN
29589: xla_ae_lines_pkg.BflowUpgEntry
29590: (p_business_method_code => l_bflow_method_code
29591: ,p_business_class_code => l_bflow_class_code
29592: ,p_balance_type => l_balance_type_code);
29593: ELSE
29625: , x_value_type_code => l_adr_value_type_code
29626: , p_side => 'NA'
29627: );
29628:
29629: xla_ae_lines_pkg.set_ccid(
29630: p_code_combination_id => l_ccid
29631: , p_value_type_code => l_adr_value_type_code
29632: , p_transaction_coa_id => l_adr_transaction_coa_id
29633: , p_accounting_coa_id => l_adr_accounting_coa_id
29658: );
29659:
29660: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
29661:
29662: xla_ae_lines_pkg.set_segment(
29663: p_to_segment_code => 'GL_ACCOUNT'
29664: , p_segment_value => l_segment
29665: , p_from_segment_code => l_adr_value_segment_code
29666: , p_from_combination_id => l_adr_value_combination_id
29702: xla_accounting_err_pkg.build_message
29703: (p_appli_s_name => 'XLA'
29704: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
29705: ,p_token_1 => 'LINE_NUMBER'
29706: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
29707: ,p_token_2 => 'LINE_TYPE_NAME'
29708: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
29709: l_component_type
29710: ,l_component_code
29738: --
29739: --
29740: ------------------------------------------------------------------------------------------------
29741: -- 4219869 Business Flow
29742: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29743: -- Prior Entry. Currently, the following code is always generated.
29744: ------------------------------------------------------------------------------------------------
29745: XLA_AE_LINES_PKG.ValidateCurrentLine;
29746:
29741: -- 4219869 Business Flow
29742: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29743: -- Prior Entry. Currently, the following code is always generated.
29744: ------------------------------------------------------------------------------------------------
29745: XLA_AE_LINES_PKG.ValidateCurrentLine;
29746:
29747: ------------------------------------------------------------------------------------
29748: -- 4219869 Business Flow
29749: -- Populated credit and debit amounts -- Need to generate this within IF
29747: ------------------------------------------------------------------------------------
29748: -- 4219869 Business Flow
29749: -- Populated credit and debit amounts -- Need to generate this within IF
29750: ------------------------------------------------------------------------------------
29751: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29752:
29753: ----------------------------------------------------------------------------------
29754: -- 4219869 Business Flow
29755: -- Update journal entry status -- Need to generate this within IF
29779: -- To allow MPA report to determine if it should generate report process
29780: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29781: ------------------------------------------------------------------------------------------
29782:
29783: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29784: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29785: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29786: -- call ADRs
29787: -- Bug 4922099
29780: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29781: ------------------------------------------------------------------------------------------
29782:
29783: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29784: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29785: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29786: -- call ADRs
29787: -- Bug 4922099
29788: --
29804: , x_value_type_code => l_adr_value_type_code
29805: , p_side => 'NA'
29806: );
29807:
29808: xla_ae_lines_pkg.set_ccid(
29809: p_code_combination_id => l_ccid
29810: , p_value_type_code => l_adr_value_type_code
29811: , p_transaction_coa_id => l_adr_transaction_coa_id
29812: , p_accounting_coa_id => l_adr_accounting_coa_id
29837: );
29838:
29839: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
29840:
29841: xla_ae_lines_pkg.set_segment(
29842: p_to_segment_code => 'GL_ACCOUNT'
29843: , p_segment_value => l_segment
29844: , p_from_segment_code => l_adr_value_segment_code
29845: , p_from_combination_id => l_adr_value_combination_id
29868:
29869: --
29870: -- Update the line information that should be overwritten
29871: --
29872: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29873: p_header_num => 1);
29874: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29875:
29876: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29870: -- Update the line information that should be overwritten
29871: --
29872: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29873: p_header_num => 1);
29874: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29875:
29876: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29877:
29878: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29872: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29873: p_header_num => 1);
29874: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29875:
29876: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29877:
29878: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29879: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29880: END IF;
29875:
29876: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29877:
29878: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29879: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29880: END IF;
29881:
29882: --
29883: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29882: --
29883: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29884: --
29885: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
29886: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
29887: ELSE
29888: ---------------------------------------------------------------------------------------------------
29889: -- 4262811a Switch Sign
29890: ---------------------------------------------------------------------------------------------------
29887: ELSE
29888: ---------------------------------------------------------------------------------------------------
29889: -- 4262811a Switch Sign
29890: ---------------------------------------------------------------------------------------------------
29891: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29892: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29893: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29894: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29895: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29888: ---------------------------------------------------------------------------------------------------
29889: -- 4262811a Switch Sign
29890: ---------------------------------------------------------------------------------------------------
29891: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29892: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29893: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29894: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29895: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29896: -- 5132302
29889: -- 4262811a Switch Sign
29890: ---------------------------------------------------------------------------------------------------
29891: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29892: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29893: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29894: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29895: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29896: -- 5132302
29897: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29890: ---------------------------------------------------------------------------------------------------
29891: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29892: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29893: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29894: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29895: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29896: -- 5132302
29897: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29898: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29891: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29892: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29893: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29894: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29895: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29896: -- 5132302
29897: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29898: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29899:
29893: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29894: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29895: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29896: -- 5132302
29897: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29898: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29899:
29900: END IF;
29901:
29894: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29895: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29896: -- 5132302
29897: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29898: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29899:
29900: END IF;
29901:
29902: -- 4955764
29899:
29900: END IF;
29901:
29902: -- 4955764
29903: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29904: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29905:
29906:
29907: XLA_AE_LINES_PKG.ValidateCurrentLine;
29903: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29904: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29905:
29906:
29907: XLA_AE_LINES_PKG.ValidateCurrentLine;
29908: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29909:
29910: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29911: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29904: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29905:
29906:
29907: XLA_AE_LINES_PKG.ValidateCurrentLine;
29908: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29909:
29910: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29911: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29912: ,p_balance_type_code => l_balance_type_code);
30041: --
30042: -- bulk performance
30043: --
30044: l_balance_type_code VARCHAR2(1);
30045: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
30046: l_log_module VARCHAR2(240);
30047:
30048: --
30049: -- Upgrade strategy
30113: ') = 'Y'
30114: THEN
30115:
30116: --
30117: XLA_AE_LINES_PKG.SetNewLine;
30118:
30119: p_balance_type_code := l_balance_type_code;
30120: -- set the flag so later we will know whether the gain loss line needs to be created
30121:
30125:
30126: --
30127: -- bulk performance
30128: --
30129: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
30130: p_header_num => 0); -- 4262811
30131: --
30132: -- set accounting line options
30133: --
30130: p_header_num => 0); -- 4262811
30131: --
30132: -- set accounting line options
30133: --
30134: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
30135: p_natural_side_code => 'D'
30136: , p_gain_or_loss_flag => 'N'
30137: , p_gl_transfer_mode_code => 'S'
30138: , p_acct_entry_type_code => 'A'
30144: --
30145: --
30146: -- set accounting line type info
30147: --
30148: xla_ae_lines_pkg.SetAcctLineType
30149: (p_component_type => l_component_type
30150: ,p_event_type_code => l_event_type_code
30151: ,p_line_definition_owner_code => l_line_definition_owner_code
30152: ,p_line_definition_code => l_line_definition_code
30158: ,p_event_class_code => l_event_class_code);
30159: --
30160: -- set accounting class
30161: --
30162: xla_ae_lines_pkg.SetAcctClass(
30163: p_accounting_class_code => 'FV_MISCCASH_DR'
30164: , p_ae_header_id => l_ae_header_id
30165: );
30166:
30166:
30167: --
30168: -- set rounding class
30169: --
30170: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30171: 'RECEIVABLE';
30172:
30173: --
30174: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30170: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30171: 'RECEIVABLE';
30172:
30173: --
30174: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30175: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30176: --
30177: -- bulk performance
30178: --
30171: 'RECEIVABLE';
30172:
30173: --
30174: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30175: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30176: --
30177: -- bulk performance
30178: --
30179: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30175: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30176: --
30177: -- bulk performance
30178: --
30179: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30180:
30181: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30182: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30183:
30177: -- bulk performance
30178: --
30179: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30180:
30181: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30182: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30183:
30184: -- 4955764
30185: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30181: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30182: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30183:
30184: -- 4955764
30185: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30186: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
30187:
30188: -- 4458381 Public Sector Enh
30189:
30209: l_rec_acct_attrs.array_char_value(7) := p_source_28;
30210: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
30211: l_rec_acct_attrs.array_num_value(8) := p_source_29;
30212:
30213: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30214: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30215:
30216: ---------------------------------------------------------------------------------------------------------------
30217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30210: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
30211: l_rec_acct_attrs.array_num_value(8) := p_source_29;
30212:
30213: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30214: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30215:
30216: ---------------------------------------------------------------------------------------------------------------
30217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30218: ---------------------------------------------------------------------------------------------------------------
30213: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30214: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30215:
30216: ---------------------------------------------------------------------------------------------------------------
30217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30218: ---------------------------------------------------------------------------------------------------------------
30219: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30220:
30221: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30215:
30216: ---------------------------------------------------------------------------------------------------------------
30217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30218: ---------------------------------------------------------------------------------------------------------------
30219: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30220:
30221: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30222: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30223:
30217: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30218: ---------------------------------------------------------------------------------------------------------------
30219: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30220:
30221: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30222: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30223:
30224: IF xla_accounting_cache_pkg.GetValueChar
30225: (p_source_code => 'LEDGER_CATEGORY_CODE'
30218: ---------------------------------------------------------------------------------------------------------------
30219: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30220:
30221: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30222: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30223:
30224: IF xla_accounting_cache_pkg.GetValueChar
30225: (p_source_code => 'LEDGER_CATEGORY_CODE'
30226: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
30229: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
30230: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
30231: )
30232: THEN
30233: xla_ae_lines_pkg.BflowUpgEntry
30234: (p_business_method_code => l_bflow_method_code
30235: ,p_business_class_code => l_bflow_class_code
30236: ,p_balance_type => l_balance_type_code);
30237: ELSE
30269: , x_value_type_code => l_adr_value_type_code
30270: , p_side => 'NA'
30271: );
30272:
30273: xla_ae_lines_pkg.set_ccid(
30274: p_code_combination_id => l_ccid
30275: , p_value_type_code => l_adr_value_type_code
30276: , p_transaction_coa_id => l_adr_transaction_coa_id
30277: , p_accounting_coa_id => l_adr_accounting_coa_id
30302: );
30303:
30304: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
30305:
30306: xla_ae_lines_pkg.set_segment(
30307: p_to_segment_code => 'GL_ACCOUNT'
30308: , p_segment_value => l_segment
30309: , p_from_segment_code => l_adr_value_segment_code
30310: , p_from_combination_id => l_adr_value_combination_id
30346: xla_accounting_err_pkg.build_message
30347: (p_appli_s_name => 'XLA'
30348: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
30349: ,p_token_1 => 'LINE_NUMBER'
30350: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
30351: ,p_token_2 => 'LINE_TYPE_NAME'
30352: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
30353: l_component_type
30354: ,l_component_code
30382: --
30383: --
30384: ------------------------------------------------------------------------------------------------
30385: -- 4219869 Business Flow
30386: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
30387: -- Prior Entry. Currently, the following code is always generated.
30388: ------------------------------------------------------------------------------------------------
30389: XLA_AE_LINES_PKG.ValidateCurrentLine;
30390:
30385: -- 4219869 Business Flow
30386: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
30387: -- Prior Entry. Currently, the following code is always generated.
30388: ------------------------------------------------------------------------------------------------
30389: XLA_AE_LINES_PKG.ValidateCurrentLine;
30390:
30391: ------------------------------------------------------------------------------------
30392: -- 4219869 Business Flow
30393: -- Populated credit and debit amounts -- Need to generate this within IF
30391: ------------------------------------------------------------------------------------
30392: -- 4219869 Business Flow
30393: -- Populated credit and debit amounts -- Need to generate this within IF
30394: ------------------------------------------------------------------------------------
30395: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30396:
30397: ----------------------------------------------------------------------------------
30398: -- 4219869 Business Flow
30399: -- Update journal entry status -- Need to generate this within IF
30423: -- To allow MPA report to determine if it should generate report process
30424: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30425: ------------------------------------------------------------------------------------------
30426:
30427: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30428: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30429: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30430: -- call ADRs
30431: -- Bug 4922099
30424: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30425: ------------------------------------------------------------------------------------------
30426:
30427: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30428: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30429: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30430: -- call ADRs
30431: -- Bug 4922099
30432: --
30448: , x_value_type_code => l_adr_value_type_code
30449: , p_side => 'NA'
30450: );
30451:
30452: xla_ae_lines_pkg.set_ccid(
30453: p_code_combination_id => l_ccid
30454: , p_value_type_code => l_adr_value_type_code
30455: , p_transaction_coa_id => l_adr_transaction_coa_id
30456: , p_accounting_coa_id => l_adr_accounting_coa_id
30481: );
30482:
30483: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
30484:
30485: xla_ae_lines_pkg.set_segment(
30486: p_to_segment_code => 'GL_ACCOUNT'
30487: , p_segment_value => l_segment
30488: , p_from_segment_code => l_adr_value_segment_code
30489: , p_from_combination_id => l_adr_value_combination_id
30512:
30513: --
30514: -- Update the line information that should be overwritten
30515: --
30516: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30517: p_header_num => 1);
30518: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30519:
30520: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30514: -- Update the line information that should be overwritten
30515: --
30516: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30517: p_header_num => 1);
30518: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30519:
30520: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30521:
30522: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30516: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30517: p_header_num => 1);
30518: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30519:
30520: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30521:
30522: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30523: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30524: END IF;
30519:
30520: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30521:
30522: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30523: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30524: END IF;
30525:
30526: --
30527: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30526: --
30527: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30528: --
30529: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
30530: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
30531: ELSE
30532: ---------------------------------------------------------------------------------------------------
30533: -- 4262811a Switch Sign
30534: ---------------------------------------------------------------------------------------------------
30531: ELSE
30532: ---------------------------------------------------------------------------------------------------
30533: -- 4262811a Switch Sign
30534: ---------------------------------------------------------------------------------------------------
30535: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30537: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30539: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30532: ---------------------------------------------------------------------------------------------------
30533: -- 4262811a Switch Sign
30534: ---------------------------------------------------------------------------------------------------
30535: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30537: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30539: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30540: -- 5132302
30533: -- 4262811a Switch Sign
30534: ---------------------------------------------------------------------------------------------------
30535: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30537: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30539: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30540: -- 5132302
30541: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30534: ---------------------------------------------------------------------------------------------------
30535: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30537: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30539: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30540: -- 5132302
30541: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30542: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30535: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30537: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30539: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30540: -- 5132302
30541: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30542: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30543:
30537: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30539: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30540: -- 5132302
30541: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30542: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30543:
30544: END IF;
30545:
30538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30539: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30540: -- 5132302
30541: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30542: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30543:
30544: END IF;
30545:
30546: -- 4955764
30543:
30544: END IF;
30545:
30546: -- 4955764
30547: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30548: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30549:
30550:
30551: XLA_AE_LINES_PKG.ValidateCurrentLine;
30547: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30548: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30549:
30550:
30551: XLA_AE_LINES_PKG.ValidateCurrentLine;
30552: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30553:
30554: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30555: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30548: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30549:
30550:
30551: XLA_AE_LINES_PKG.ValidateCurrentLine;
30552: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30553:
30554: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30555: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30556: ,p_balance_type_code => l_balance_type_code);
30709: --
30710: -- bulk performance
30711: --
30712: l_balance_type_code VARCHAR2(1);
30713: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
30714: l_log_module VARCHAR2(240);
30715:
30716: --
30717: -- Upgrade strategy
30795: ') = 'Y'
30796: THEN
30797:
30798: --
30799: XLA_AE_LINES_PKG.SetNewLine;
30800:
30801: p_balance_type_code := l_balance_type_code;
30802: -- set the flag so later we will know whether the gain loss line needs to be created
30803:
30807:
30808: --
30809: -- bulk performance
30810: --
30811: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
30812: p_header_num => 0); -- 4262811
30813: --
30814: -- set accounting line options
30815: --
30812: p_header_num => 0); -- 4262811
30813: --
30814: -- set accounting line options
30815: --
30816: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
30817: p_natural_side_code => 'C'
30818: , p_gain_or_loss_flag => 'N'
30819: , p_gl_transfer_mode_code => 'S'
30820: , p_acct_entry_type_code => 'A'
30826: --
30827: --
30828: -- set accounting line type info
30829: --
30830: xla_ae_lines_pkg.SetAcctLineType
30831: (p_component_type => l_component_type
30832: ,p_event_type_code => l_event_type_code
30833: ,p_line_definition_owner_code => l_line_definition_owner_code
30834: ,p_line_definition_code => l_line_definition_code
30840: ,p_event_class_code => l_event_class_code);
30841: --
30842: -- set accounting class
30843: --
30844: xla_ae_lines_pkg.SetAcctClass(
30845: p_accounting_class_code => 'FV_CASH_CR'
30846: , p_ae_header_id => l_ae_header_id
30847: );
30848:
30848:
30849: --
30850: -- set rounding class
30851: --
30852: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30853: 'RECEIVABLE';
30854:
30855: --
30856: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30852: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30853: 'RECEIVABLE';
30854:
30855: --
30856: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30857: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30858: --
30859: -- bulk performance
30860: --
30853: 'RECEIVABLE';
30854:
30855: --
30856: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30857: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30858: --
30859: -- bulk performance
30860: --
30861: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30857: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30858: --
30859: -- bulk performance
30860: --
30861: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30862:
30863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30864: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30865:
30859: -- bulk performance
30860: --
30861: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30862:
30863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30864: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30865:
30866: -- 4955764
30867: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30863: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30864: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30865:
30866: -- 4955764
30867: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30868: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
30869:
30870: -- 4458381 Public Sector Enh
30871:
30907: l_rec_acct_attrs.array_num_value(15) := p_source_64;
30908: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
30909: l_rec_acct_attrs.array_char_value(16) := p_source_65;
30910:
30911: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30912: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30913:
30914: ---------------------------------------------------------------------------------------------------------------
30915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30908: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
30909: l_rec_acct_attrs.array_char_value(16) := p_source_65;
30910:
30911: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30912: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30913:
30914: ---------------------------------------------------------------------------------------------------------------
30915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30916: ---------------------------------------------------------------------------------------------------------------
30911: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30912: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30913:
30914: ---------------------------------------------------------------------------------------------------------------
30915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30916: ---------------------------------------------------------------------------------------------------------------
30917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30918:
30919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30913:
30914: ---------------------------------------------------------------------------------------------------------------
30915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30916: ---------------------------------------------------------------------------------------------------------------
30917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30918:
30919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30920: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30921:
30915: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30916: ---------------------------------------------------------------------------------------------------------------
30917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30918:
30919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30920: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30921:
30922: IF xla_accounting_cache_pkg.GetValueChar
30923: (p_source_code => 'LEDGER_CATEGORY_CODE'
30916: ---------------------------------------------------------------------------------------------------------------
30917: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30918:
30919: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30920: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30921:
30922: IF xla_accounting_cache_pkg.GetValueChar
30923: (p_source_code => 'LEDGER_CATEGORY_CODE'
30924: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
30927: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
30928: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
30929: )
30930: THEN
30931: xla_ae_lines_pkg.BflowUpgEntry
30932: (p_business_method_code => l_bflow_method_code
30933: ,p_business_class_code => l_bflow_class_code
30934: ,p_balance_type => l_balance_type_code);
30935: ELSE
30967: , x_value_type_code => l_adr_value_type_code
30968: , p_side => 'NA'
30969: );
30970:
30971: xla_ae_lines_pkg.set_ccid(
30972: p_code_combination_id => l_ccid
30973: , p_value_type_code => l_adr_value_type_code
30974: , p_transaction_coa_id => l_adr_transaction_coa_id
30975: , p_accounting_coa_id => l_adr_accounting_coa_id
31002: );
31003:
31004: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
31005:
31006: xla_ae_lines_pkg.set_segment(
31007: p_to_segment_code => 'GL_ACCOUNT'
31008: , p_segment_value => l_segment
31009: , p_from_segment_code => l_adr_value_segment_code
31010: , p_from_combination_id => l_adr_value_combination_id
31046: xla_accounting_err_pkg.build_message
31047: (p_appli_s_name => 'XLA'
31048: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
31049: ,p_token_1 => 'LINE_NUMBER'
31050: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
31051: ,p_token_2 => 'LINE_TYPE_NAME'
31052: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
31053: l_component_type
31054: ,l_component_code
31082: --
31083: --
31084: ------------------------------------------------------------------------------------------------
31085: -- 4219869 Business Flow
31086: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31087: -- Prior Entry. Currently, the following code is always generated.
31088: ------------------------------------------------------------------------------------------------
31089: XLA_AE_LINES_PKG.ValidateCurrentLine;
31090:
31085: -- 4219869 Business Flow
31086: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31087: -- Prior Entry. Currently, the following code is always generated.
31088: ------------------------------------------------------------------------------------------------
31089: XLA_AE_LINES_PKG.ValidateCurrentLine;
31090:
31091: ------------------------------------------------------------------------------------
31092: -- 4219869 Business Flow
31093: -- Populated credit and debit amounts -- Need to generate this within IF
31091: ------------------------------------------------------------------------------------
31092: -- 4219869 Business Flow
31093: -- Populated credit and debit amounts -- Need to generate this within IF
31094: ------------------------------------------------------------------------------------
31095: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31096:
31097: ----------------------------------------------------------------------------------
31098: -- 4219869 Business Flow
31099: -- Update journal entry status -- Need to generate this within IF
31123: -- To allow MPA report to determine if it should generate report process
31124: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31125: ------------------------------------------------------------------------------------------
31126:
31127: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31128: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31129: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31130: -- call ADRs
31131: -- Bug 4922099
31124: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31125: ------------------------------------------------------------------------------------------
31126:
31127: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31128: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31129: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31130: -- call ADRs
31131: -- Bug 4922099
31132: --
31148: , x_value_type_code => l_adr_value_type_code
31149: , p_side => 'NA'
31150: );
31151:
31152: xla_ae_lines_pkg.set_ccid(
31153: p_code_combination_id => l_ccid
31154: , p_value_type_code => l_adr_value_type_code
31155: , p_transaction_coa_id => l_adr_transaction_coa_id
31156: , p_accounting_coa_id => l_adr_accounting_coa_id
31183: );
31184:
31185: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
31186:
31187: xla_ae_lines_pkg.set_segment(
31188: p_to_segment_code => 'GL_ACCOUNT'
31189: , p_segment_value => l_segment
31190: , p_from_segment_code => l_adr_value_segment_code
31191: , p_from_combination_id => l_adr_value_combination_id
31214:
31215: --
31216: -- Update the line information that should be overwritten
31217: --
31218: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31219: p_header_num => 1);
31220: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31221:
31222: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31216: -- Update the line information that should be overwritten
31217: --
31218: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31219: p_header_num => 1);
31220: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31221:
31222: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31223:
31224: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31218: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31219: p_header_num => 1);
31220: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31221:
31222: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31223:
31224: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31225: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31226: END IF;
31221:
31222: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31223:
31224: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31225: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31226: END IF;
31227:
31228: --
31229: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31228: --
31229: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31230: --
31231: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
31232: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
31233: ELSE
31234: ---------------------------------------------------------------------------------------------------
31235: -- 4262811a Switch Sign
31236: ---------------------------------------------------------------------------------------------------
31233: ELSE
31234: ---------------------------------------------------------------------------------------------------
31235: -- 4262811a Switch Sign
31236: ---------------------------------------------------------------------------------------------------
31237: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31238: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31239: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31240: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31241: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31234: ---------------------------------------------------------------------------------------------------
31235: -- 4262811a Switch Sign
31236: ---------------------------------------------------------------------------------------------------
31237: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31238: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31239: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31240: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31241: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31242: -- 5132302
31235: -- 4262811a Switch Sign
31236: ---------------------------------------------------------------------------------------------------
31237: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31238: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31239: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31240: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31241: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31242: -- 5132302
31243: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31236: ---------------------------------------------------------------------------------------------------
31237: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31238: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31239: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31240: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31241: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31242: -- 5132302
31243: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31244: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31237: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31238: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31239: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31240: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31241: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31242: -- 5132302
31243: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31244: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31245:
31239: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31240: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31241: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31242: -- 5132302
31243: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31244: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31245:
31246: END IF;
31247:
31240: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31241: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31242: -- 5132302
31243: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31244: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31245:
31246: END IF;
31247:
31248: -- 4955764
31245:
31246: END IF;
31247:
31248: -- 4955764
31249: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31250: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31251:
31252:
31253: XLA_AE_LINES_PKG.ValidateCurrentLine;
31249: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31250: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31251:
31252:
31253: XLA_AE_LINES_PKG.ValidateCurrentLine;
31254: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31255:
31256: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31257: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31250: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31251:
31252:
31253: XLA_AE_LINES_PKG.ValidateCurrentLine;
31254: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31255:
31256: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31257: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31258: ,p_balance_type_code => l_balance_type_code);
31411: --
31412: -- bulk performance
31413: --
31414: l_balance_type_code VARCHAR2(1);
31415: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
31416: l_log_module VARCHAR2(240);
31417:
31418: --
31419: -- Upgrade strategy
31497: ') = 'Y'
31498: THEN
31499:
31500: --
31501: XLA_AE_LINES_PKG.SetNewLine;
31502:
31503: p_balance_type_code := l_balance_type_code;
31504: -- set the flag so later we will know whether the gain loss line needs to be created
31505:
31509:
31510: --
31511: -- bulk performance
31512: --
31513: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
31514: p_header_num => 0); -- 4262811
31515: --
31516: -- set accounting line options
31517: --
31514: p_header_num => 0); -- 4262811
31515: --
31516: -- set accounting line options
31517: --
31518: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
31519: p_natural_side_code => 'D'
31520: , p_gain_or_loss_flag => 'N'
31521: , p_gl_transfer_mode_code => 'S'
31522: , p_acct_entry_type_code => 'A'
31528: --
31529: --
31530: -- set accounting line type info
31531: --
31532: xla_ae_lines_pkg.SetAcctLineType
31533: (p_component_type => l_component_type
31534: ,p_event_type_code => l_event_type_code
31535: ,p_line_definition_owner_code => l_line_definition_owner_code
31536: ,p_line_definition_code => l_line_definition_code
31542: ,p_event_class_code => l_event_class_code);
31543: --
31544: -- set accounting class
31545: --
31546: xla_ae_lines_pkg.SetAcctClass(
31547: p_accounting_class_code => 'FV_CASH_DR'
31548: , p_ae_header_id => l_ae_header_id
31549: );
31550:
31550:
31551: --
31552: -- set rounding class
31553: --
31554: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31555: 'RECEIVABLE';
31556:
31557: --
31558: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31554: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31555: 'RECEIVABLE';
31556:
31557: --
31558: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31559: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31560: --
31561: -- bulk performance
31562: --
31555: 'RECEIVABLE';
31556:
31557: --
31558: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31559: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31560: --
31561: -- bulk performance
31562: --
31563: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31559: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31560: --
31561: -- bulk performance
31562: --
31563: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31564:
31565: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31566: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31567:
31561: -- bulk performance
31562: --
31563: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31564:
31565: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31566: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31567:
31568: -- 4955764
31569: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31565: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31566: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31567:
31568: -- 4955764
31569: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31570: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
31571:
31572: -- 4458381 Public Sector Enh
31573:
31609: l_rec_acct_attrs.array_num_value(15) := p_source_64;
31610: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
31611: l_rec_acct_attrs.array_char_value(16) := p_source_65;
31612:
31613: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31614: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31615:
31616: ---------------------------------------------------------------------------------------------------------------
31617: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31610: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
31611: l_rec_acct_attrs.array_char_value(16) := p_source_65;
31612:
31613: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31614: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31615:
31616: ---------------------------------------------------------------------------------------------------------------
31617: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31618: ---------------------------------------------------------------------------------------------------------------
31613: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31614: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31615:
31616: ---------------------------------------------------------------------------------------------------------------
31617: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31618: ---------------------------------------------------------------------------------------------------------------
31619: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31620:
31621: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31615:
31616: ---------------------------------------------------------------------------------------------------------------
31617: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31618: ---------------------------------------------------------------------------------------------------------------
31619: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31620:
31621: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31622: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31623:
31617: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31618: ---------------------------------------------------------------------------------------------------------------
31619: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31620:
31621: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31622: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31623:
31624: IF xla_accounting_cache_pkg.GetValueChar
31625: (p_source_code => 'LEDGER_CATEGORY_CODE'
31618: ---------------------------------------------------------------------------------------------------------------
31619: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31620:
31621: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31622: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31623:
31624: IF xla_accounting_cache_pkg.GetValueChar
31625: (p_source_code => 'LEDGER_CATEGORY_CODE'
31626: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
31629: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
31630: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
31631: )
31632: THEN
31633: xla_ae_lines_pkg.BflowUpgEntry
31634: (p_business_method_code => l_bflow_method_code
31635: ,p_business_class_code => l_bflow_class_code
31636: ,p_balance_type => l_balance_type_code);
31637: ELSE
31669: , x_value_type_code => l_adr_value_type_code
31670: , p_side => 'NA'
31671: );
31672:
31673: xla_ae_lines_pkg.set_ccid(
31674: p_code_combination_id => l_ccid
31675: , p_value_type_code => l_adr_value_type_code
31676: , p_transaction_coa_id => l_adr_transaction_coa_id
31677: , p_accounting_coa_id => l_adr_accounting_coa_id
31705: );
31706:
31707: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
31708:
31709: xla_ae_lines_pkg.set_segment(
31710: p_to_segment_code => 'GL_ACCOUNT'
31711: , p_segment_value => l_segment
31712: , p_from_segment_code => l_adr_value_segment_code
31713: , p_from_combination_id => l_adr_value_combination_id
31749: xla_accounting_err_pkg.build_message
31750: (p_appli_s_name => 'XLA'
31751: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
31752: ,p_token_1 => 'LINE_NUMBER'
31753: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
31754: ,p_token_2 => 'LINE_TYPE_NAME'
31755: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
31756: l_component_type
31757: ,l_component_code
31785: --
31786: --
31787: ------------------------------------------------------------------------------------------------
31788: -- 4219869 Business Flow
31789: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31790: -- Prior Entry. Currently, the following code is always generated.
31791: ------------------------------------------------------------------------------------------------
31792: XLA_AE_LINES_PKG.ValidateCurrentLine;
31793:
31788: -- 4219869 Business Flow
31789: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31790: -- Prior Entry. Currently, the following code is always generated.
31791: ------------------------------------------------------------------------------------------------
31792: XLA_AE_LINES_PKG.ValidateCurrentLine;
31793:
31794: ------------------------------------------------------------------------------------
31795: -- 4219869 Business Flow
31796: -- Populated credit and debit amounts -- Need to generate this within IF
31794: ------------------------------------------------------------------------------------
31795: -- 4219869 Business Flow
31796: -- Populated credit and debit amounts -- Need to generate this within IF
31797: ------------------------------------------------------------------------------------
31798: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31799:
31800: ----------------------------------------------------------------------------------
31801: -- 4219869 Business Flow
31802: -- Update journal entry status -- Need to generate this within IF
31826: -- To allow MPA report to determine if it should generate report process
31827: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31828: ------------------------------------------------------------------------------------------
31829:
31830: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31831: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31832: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31833: -- call ADRs
31834: -- Bug 4922099
31827: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31828: ------------------------------------------------------------------------------------------
31829:
31830: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31831: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31832: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31833: -- call ADRs
31834: -- Bug 4922099
31835: --
31851: , x_value_type_code => l_adr_value_type_code
31852: , p_side => 'NA'
31853: );
31854:
31855: xla_ae_lines_pkg.set_ccid(
31856: p_code_combination_id => l_ccid
31857: , p_value_type_code => l_adr_value_type_code
31858: , p_transaction_coa_id => l_adr_transaction_coa_id
31859: , p_accounting_coa_id => l_adr_accounting_coa_id
31887: );
31888:
31889: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
31890:
31891: xla_ae_lines_pkg.set_segment(
31892: p_to_segment_code => 'GL_ACCOUNT'
31893: , p_segment_value => l_segment
31894: , p_from_segment_code => l_adr_value_segment_code
31895: , p_from_combination_id => l_adr_value_combination_id
31918:
31919: --
31920: -- Update the line information that should be overwritten
31921: --
31922: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31923: p_header_num => 1);
31924: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31925:
31926: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31920: -- Update the line information that should be overwritten
31921: --
31922: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31923: p_header_num => 1);
31924: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31925:
31926: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31927:
31928: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31922: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31923: p_header_num => 1);
31924: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31925:
31926: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31927:
31928: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31929: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31930: END IF;
31925:
31926: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31927:
31928: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31929: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31930: END IF;
31931:
31932: --
31933: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31932: --
31933: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31934: --
31935: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
31936: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
31937: ELSE
31938: ---------------------------------------------------------------------------------------------------
31939: -- 4262811a Switch Sign
31940: ---------------------------------------------------------------------------------------------------
31937: ELSE
31938: ---------------------------------------------------------------------------------------------------
31939: -- 4262811a Switch Sign
31940: ---------------------------------------------------------------------------------------------------
31941: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31942: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31943: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31944: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31945: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31938: ---------------------------------------------------------------------------------------------------
31939: -- 4262811a Switch Sign
31940: ---------------------------------------------------------------------------------------------------
31941: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31942: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31943: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31944: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31945: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31946: -- 5132302
31939: -- 4262811a Switch Sign
31940: ---------------------------------------------------------------------------------------------------
31941: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31942: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31943: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31944: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31945: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31946: -- 5132302
31947: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31940: ---------------------------------------------------------------------------------------------------
31941: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31942: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31943: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31944: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31945: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31946: -- 5132302
31947: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31948: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31941: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31942: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31943: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31944: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31945: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31946: -- 5132302
31947: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31948: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31949:
31943: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31944: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31945: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31946: -- 5132302
31947: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31948: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31949:
31950: END IF;
31951:
31944: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31945: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31946: -- 5132302
31947: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31948: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31949:
31950: END IF;
31951:
31952: -- 4955764
31949:
31950: END IF;
31951:
31952: -- 4955764
31953: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31954: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31955:
31956:
31957: XLA_AE_LINES_PKG.ValidateCurrentLine;
31953: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31954: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31955:
31956:
31957: XLA_AE_LINES_PKG.ValidateCurrentLine;
31958: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31959:
31960: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31961: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31954: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31955:
31956:
31957: XLA_AE_LINES_PKG.ValidateCurrentLine;
31958: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31959:
31960: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31961: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31962: ,p_balance_type_code => l_balance_type_code);
32117: --
32118: -- bulk performance
32119: --
32120: l_balance_type_code VARCHAR2(1);
32121: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
32122: l_log_module VARCHAR2(240);
32123:
32124: --
32125: -- Upgrade strategy
32209: ') = 'Y'
32210: THEN
32211:
32212: --
32213: XLA_AE_LINES_PKG.SetNewLine;
32214:
32215: p_balance_type_code := l_balance_type_code;
32216: -- set the flag so later we will know whether the gain loss line needs to be created
32217:
32221:
32222: --
32223: -- bulk performance
32224: --
32225: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
32226: p_header_num => 0); -- 4262811
32227: --
32228: -- set accounting line options
32229: --
32226: p_header_num => 0); -- 4262811
32227: --
32228: -- set accounting line options
32229: --
32230: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
32231: p_natural_side_code => 'C'
32232: , p_gain_or_loss_flag => 'N'
32233: , p_gl_transfer_mode_code => 'S'
32234: , p_acct_entry_type_code => 'A'
32240: --
32241: --
32242: -- set accounting line type info
32243: --
32244: xla_ae_lines_pkg.SetAcctLineType
32245: (p_component_type => l_component_type
32246: ,p_event_type_code => l_event_type_code
32247: ,p_line_definition_owner_code => l_line_definition_owner_code
32248: ,p_line_definition_code => l_line_definition_code
32254: ,p_event_class_code => l_event_class_code);
32255: --
32256: -- set accounting class
32257: --
32258: xla_ae_lines_pkg.SetAcctClass(
32259: p_accounting_class_code => 'FV_CASH_CR'
32260: , p_ae_header_id => l_ae_header_id
32261: );
32262:
32262:
32263: --
32264: -- set rounding class
32265: --
32266: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32267: 'RECEIVABLE';
32268:
32269: --
32270: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32266: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32267: 'RECEIVABLE';
32268:
32269: --
32270: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32271: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32272: --
32273: -- bulk performance
32274: --
32267: 'RECEIVABLE';
32268:
32269: --
32270: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32271: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32272: --
32273: -- bulk performance
32274: --
32275: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32271: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32272: --
32273: -- bulk performance
32274: --
32275: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32276:
32277: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32278: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32279:
32273: -- bulk performance
32274: --
32275: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32276:
32277: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32278: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32279:
32280: -- 4955764
32281: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32277: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32278: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32279:
32280: -- 4955764
32281: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32282: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
32283:
32284: -- 4458381 Public Sector Enh
32285:
32321: l_rec_acct_attrs.array_num_value(15) := p_source_64;
32322: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
32323: l_rec_acct_attrs.array_char_value(16) := p_source_65;
32324:
32325: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32326: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32327:
32328: ---------------------------------------------------------------------------------------------------------------
32329: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32322: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
32323: l_rec_acct_attrs.array_char_value(16) := p_source_65;
32324:
32325: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32326: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32327:
32328: ---------------------------------------------------------------------------------------------------------------
32329: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32330: ---------------------------------------------------------------------------------------------------------------
32325: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32326: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32327:
32328: ---------------------------------------------------------------------------------------------------------------
32329: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32330: ---------------------------------------------------------------------------------------------------------------
32331: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32332:
32333: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32327:
32328: ---------------------------------------------------------------------------------------------------------------
32329: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32330: ---------------------------------------------------------------------------------------------------------------
32331: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32332:
32333: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32334: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32335:
32329: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32330: ---------------------------------------------------------------------------------------------------------------
32331: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32332:
32333: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32334: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32335:
32336: IF xla_accounting_cache_pkg.GetValueChar
32337: (p_source_code => 'LEDGER_CATEGORY_CODE'
32330: ---------------------------------------------------------------------------------------------------------------
32331: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32332:
32333: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32334: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32335:
32336: IF xla_accounting_cache_pkg.GetValueChar
32337: (p_source_code => 'LEDGER_CATEGORY_CODE'
32338: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
32341: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
32342: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
32343: )
32344: THEN
32345: xla_ae_lines_pkg.BflowUpgEntry
32346: (p_business_method_code => l_bflow_method_code
32347: ,p_business_class_code => l_bflow_class_code
32348: ,p_balance_type => l_balance_type_code);
32349: ELSE
32381: , x_value_type_code => l_adr_value_type_code
32382: , p_side => 'NA'
32383: );
32384:
32385: xla_ae_lines_pkg.set_ccid(
32386: p_code_combination_id => l_ccid
32387: , p_value_type_code => l_adr_value_type_code
32388: , p_transaction_coa_id => l_adr_transaction_coa_id
32389: , p_accounting_coa_id => l_adr_accounting_coa_id
32417: );
32418:
32419: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
32420:
32421: xla_ae_lines_pkg.set_segment(
32422: p_to_segment_code => 'GL_ACCOUNT'
32423: , p_segment_value => l_segment
32424: , p_from_segment_code => l_adr_value_segment_code
32425: , p_from_combination_id => l_adr_value_combination_id
32461: xla_accounting_err_pkg.build_message
32462: (p_appli_s_name => 'XLA'
32463: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
32464: ,p_token_1 => 'LINE_NUMBER'
32465: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
32466: ,p_token_2 => 'LINE_TYPE_NAME'
32467: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
32468: l_component_type
32469: ,l_component_code
32497: --
32498: --
32499: ------------------------------------------------------------------------------------------------
32500: -- 4219869 Business Flow
32501: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32502: -- Prior Entry. Currently, the following code is always generated.
32503: ------------------------------------------------------------------------------------------------
32504: XLA_AE_LINES_PKG.ValidateCurrentLine;
32505:
32500: -- 4219869 Business Flow
32501: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32502: -- Prior Entry. Currently, the following code is always generated.
32503: ------------------------------------------------------------------------------------------------
32504: XLA_AE_LINES_PKG.ValidateCurrentLine;
32505:
32506: ------------------------------------------------------------------------------------
32507: -- 4219869 Business Flow
32508: -- Populated credit and debit amounts -- Need to generate this within IF
32506: ------------------------------------------------------------------------------------
32507: -- 4219869 Business Flow
32508: -- Populated credit and debit amounts -- Need to generate this within IF
32509: ------------------------------------------------------------------------------------
32510: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32511:
32512: ----------------------------------------------------------------------------------
32513: -- 4219869 Business Flow
32514: -- Update journal entry status -- Need to generate this within IF
32538: -- To allow MPA report to determine if it should generate report process
32539: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32540: ------------------------------------------------------------------------------------------
32541:
32542: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32543: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32544: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32545: -- call ADRs
32546: -- Bug 4922099
32539: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32540: ------------------------------------------------------------------------------------------
32541:
32542: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32543: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32544: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32545: -- call ADRs
32546: -- Bug 4922099
32547: --
32563: , x_value_type_code => l_adr_value_type_code
32564: , p_side => 'NA'
32565: );
32566:
32567: xla_ae_lines_pkg.set_ccid(
32568: p_code_combination_id => l_ccid
32569: , p_value_type_code => l_adr_value_type_code
32570: , p_transaction_coa_id => l_adr_transaction_coa_id
32571: , p_accounting_coa_id => l_adr_accounting_coa_id
32599: );
32600:
32601: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
32602:
32603: xla_ae_lines_pkg.set_segment(
32604: p_to_segment_code => 'GL_ACCOUNT'
32605: , p_segment_value => l_segment
32606: , p_from_segment_code => l_adr_value_segment_code
32607: , p_from_combination_id => l_adr_value_combination_id
32630:
32631: --
32632: -- Update the line information that should be overwritten
32633: --
32634: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32635: p_header_num => 1);
32636: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32637:
32638: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32632: -- Update the line information that should be overwritten
32633: --
32634: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32635: p_header_num => 1);
32636: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32637:
32638: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32639:
32640: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32634: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32635: p_header_num => 1);
32636: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32637:
32638: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32639:
32640: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32641: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32642: END IF;
32637:
32638: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32639:
32640: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32641: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32642: END IF;
32643:
32644: --
32645: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32644: --
32645: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32646: --
32647: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
32648: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
32649: ELSE
32650: ---------------------------------------------------------------------------------------------------
32651: -- 4262811a Switch Sign
32652: ---------------------------------------------------------------------------------------------------
32649: ELSE
32650: ---------------------------------------------------------------------------------------------------
32651: -- 4262811a Switch Sign
32652: ---------------------------------------------------------------------------------------------------
32653: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32654: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32656: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32650: ---------------------------------------------------------------------------------------------------
32651: -- 4262811a Switch Sign
32652: ---------------------------------------------------------------------------------------------------
32653: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32654: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32656: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32658: -- 5132302
32651: -- 4262811a Switch Sign
32652: ---------------------------------------------------------------------------------------------------
32653: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32654: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32656: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32658: -- 5132302
32659: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32652: ---------------------------------------------------------------------------------------------------
32653: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32654: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32656: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32658: -- 5132302
32659: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32660: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32653: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32654: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32656: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32658: -- 5132302
32659: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32660: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32661:
32655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32656: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32658: -- 5132302
32659: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32660: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32661:
32662: END IF;
32663:
32656: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32658: -- 5132302
32659: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32660: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32661:
32662: END IF;
32663:
32664: -- 4955764
32661:
32662: END IF;
32663:
32664: -- 4955764
32665: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32666: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32667:
32668:
32669: XLA_AE_LINES_PKG.ValidateCurrentLine;
32665: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32666: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32667:
32668:
32669: XLA_AE_LINES_PKG.ValidateCurrentLine;
32670: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32671:
32672: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32673: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32666: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32667:
32668:
32669: XLA_AE_LINES_PKG.ValidateCurrentLine;
32670: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32671:
32672: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32673: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32674: ,p_balance_type_code => l_balance_type_code);
32829: --
32830: -- bulk performance
32831: --
32832: l_balance_type_code VARCHAR2(1);
32833: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
32834: l_log_module VARCHAR2(240);
32835:
32836: --
32837: -- Upgrade strategy
32921: ') = 'Y'
32922: THEN
32923:
32924: --
32925: XLA_AE_LINES_PKG.SetNewLine;
32926:
32927: p_balance_type_code := l_balance_type_code;
32928: -- set the flag so later we will know whether the gain loss line needs to be created
32929:
32933:
32934: --
32935: -- bulk performance
32936: --
32937: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
32938: p_header_num => 0); -- 4262811
32939: --
32940: -- set accounting line options
32941: --
32938: p_header_num => 0); -- 4262811
32939: --
32940: -- set accounting line options
32941: --
32942: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
32943: p_natural_side_code => 'D'
32944: , p_gain_or_loss_flag => 'N'
32945: , p_gl_transfer_mode_code => 'S'
32946: , p_acct_entry_type_code => 'A'
32952: --
32953: --
32954: -- set accounting line type info
32955: --
32956: xla_ae_lines_pkg.SetAcctLineType
32957: (p_component_type => l_component_type
32958: ,p_event_type_code => l_event_type_code
32959: ,p_line_definition_owner_code => l_line_definition_owner_code
32960: ,p_line_definition_code => l_line_definition_code
32966: ,p_event_class_code => l_event_class_code);
32967: --
32968: -- set accounting class
32969: --
32970: xla_ae_lines_pkg.SetAcctClass(
32971: p_accounting_class_code => 'FV_CASH_DR'
32972: , p_ae_header_id => l_ae_header_id
32973: );
32974:
32974:
32975: --
32976: -- set rounding class
32977: --
32978: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32979: 'RECEIVABLE';
32980:
32981: --
32982: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32978: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32979: 'RECEIVABLE';
32980:
32981: --
32982: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32983: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32984: --
32985: -- bulk performance
32986: --
32979: 'RECEIVABLE';
32980:
32981: --
32982: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32983: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32984: --
32985: -- bulk performance
32986: --
32987: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32983: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32984: --
32985: -- bulk performance
32986: --
32987: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32988:
32989: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32990: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32991:
32985: -- bulk performance
32986: --
32987: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32988:
32989: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32990: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32991:
32992: -- 4955764
32993: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32989: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32990: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32991:
32992: -- 4955764
32993: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32994: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
32995:
32996: -- 4458381 Public Sector Enh
32997:
33033: l_rec_acct_attrs.array_num_value(15) := p_source_64;
33034: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
33035: l_rec_acct_attrs.array_char_value(16) := p_source_65;
33036:
33037: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33038: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33039:
33040: ---------------------------------------------------------------------------------------------------------------
33041: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33034: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
33035: l_rec_acct_attrs.array_char_value(16) := p_source_65;
33036:
33037: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33038: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33039:
33040: ---------------------------------------------------------------------------------------------------------------
33041: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33042: ---------------------------------------------------------------------------------------------------------------
33037: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33038: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33039:
33040: ---------------------------------------------------------------------------------------------------------------
33041: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33042: ---------------------------------------------------------------------------------------------------------------
33043: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33044:
33045: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33039:
33040: ---------------------------------------------------------------------------------------------------------------
33041: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33042: ---------------------------------------------------------------------------------------------------------------
33043: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33044:
33045: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33046: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33047:
33041: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33042: ---------------------------------------------------------------------------------------------------------------
33043: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33044:
33045: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33046: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33047:
33048: IF xla_accounting_cache_pkg.GetValueChar
33049: (p_source_code => 'LEDGER_CATEGORY_CODE'
33042: ---------------------------------------------------------------------------------------------------------------
33043: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33044:
33045: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33046: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33047:
33048: IF xla_accounting_cache_pkg.GetValueChar
33049: (p_source_code => 'LEDGER_CATEGORY_CODE'
33050: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
33053: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
33054: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
33055: )
33056: THEN
33057: xla_ae_lines_pkg.BflowUpgEntry
33058: (p_business_method_code => l_bflow_method_code
33059: ,p_business_class_code => l_bflow_class_code
33060: ,p_balance_type => l_balance_type_code);
33061: ELSE
33093: , x_value_type_code => l_adr_value_type_code
33094: , p_side => 'NA'
33095: );
33096:
33097: xla_ae_lines_pkg.set_ccid(
33098: p_code_combination_id => l_ccid
33099: , p_value_type_code => l_adr_value_type_code
33100: , p_transaction_coa_id => l_adr_transaction_coa_id
33101: , p_accounting_coa_id => l_adr_accounting_coa_id
33130: );
33131:
33132: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
33133:
33134: xla_ae_lines_pkg.set_segment(
33135: p_to_segment_code => 'GL_ACCOUNT'
33136: , p_segment_value => l_segment
33137: , p_from_segment_code => l_adr_value_segment_code
33138: , p_from_combination_id => l_adr_value_combination_id
33174: xla_accounting_err_pkg.build_message
33175: (p_appli_s_name => 'XLA'
33176: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
33177: ,p_token_1 => 'LINE_NUMBER'
33178: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
33179: ,p_token_2 => 'LINE_TYPE_NAME'
33180: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
33181: l_component_type
33182: ,l_component_code
33210: --
33211: --
33212: ------------------------------------------------------------------------------------------------
33213: -- 4219869 Business Flow
33214: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33215: -- Prior Entry. Currently, the following code is always generated.
33216: ------------------------------------------------------------------------------------------------
33217: XLA_AE_LINES_PKG.ValidateCurrentLine;
33218:
33213: -- 4219869 Business Flow
33214: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33215: -- Prior Entry. Currently, the following code is always generated.
33216: ------------------------------------------------------------------------------------------------
33217: XLA_AE_LINES_PKG.ValidateCurrentLine;
33218:
33219: ------------------------------------------------------------------------------------
33220: -- 4219869 Business Flow
33221: -- Populated credit and debit amounts -- Need to generate this within IF
33219: ------------------------------------------------------------------------------------
33220: -- 4219869 Business Flow
33221: -- Populated credit and debit amounts -- Need to generate this within IF
33222: ------------------------------------------------------------------------------------
33223: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33224:
33225: ----------------------------------------------------------------------------------
33226: -- 4219869 Business Flow
33227: -- Update journal entry status -- Need to generate this within IF
33251: -- To allow MPA report to determine if it should generate report process
33252: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33253: ------------------------------------------------------------------------------------------
33254:
33255: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33256: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33257: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33258: -- call ADRs
33259: -- Bug 4922099
33252: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33253: ------------------------------------------------------------------------------------------
33254:
33255: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33256: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33257: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33258: -- call ADRs
33259: -- Bug 4922099
33260: --
33276: , x_value_type_code => l_adr_value_type_code
33277: , p_side => 'NA'
33278: );
33279:
33280: xla_ae_lines_pkg.set_ccid(
33281: p_code_combination_id => l_ccid
33282: , p_value_type_code => l_adr_value_type_code
33283: , p_transaction_coa_id => l_adr_transaction_coa_id
33284: , p_accounting_coa_id => l_adr_accounting_coa_id
33313: );
33314:
33315: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
33316:
33317: xla_ae_lines_pkg.set_segment(
33318: p_to_segment_code => 'GL_ACCOUNT'
33319: , p_segment_value => l_segment
33320: , p_from_segment_code => l_adr_value_segment_code
33321: , p_from_combination_id => l_adr_value_combination_id
33344:
33345: --
33346: -- Update the line information that should be overwritten
33347: --
33348: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33349: p_header_num => 1);
33350: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33351:
33352: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33346: -- Update the line information that should be overwritten
33347: --
33348: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33349: p_header_num => 1);
33350: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33351:
33352: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33353:
33354: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33348: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33349: p_header_num => 1);
33350: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33351:
33352: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33353:
33354: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33355: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33356: END IF;
33351:
33352: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33353:
33354: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33355: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33356: END IF;
33357:
33358: --
33359: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33358: --
33359: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33360: --
33361: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
33362: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
33363: ELSE
33364: ---------------------------------------------------------------------------------------------------
33365: -- 4262811a Switch Sign
33366: ---------------------------------------------------------------------------------------------------
33363: ELSE
33364: ---------------------------------------------------------------------------------------------------
33365: -- 4262811a Switch Sign
33366: ---------------------------------------------------------------------------------------------------
33367: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33368: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33369: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33370: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33371: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33364: ---------------------------------------------------------------------------------------------------
33365: -- 4262811a Switch Sign
33366: ---------------------------------------------------------------------------------------------------
33367: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33368: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33369: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33370: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33371: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33372: -- 5132302
33365: -- 4262811a Switch Sign
33366: ---------------------------------------------------------------------------------------------------
33367: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33368: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33369: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33370: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33371: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33372: -- 5132302
33373: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33366: ---------------------------------------------------------------------------------------------------
33367: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33368: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33369: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33370: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33371: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33372: -- 5132302
33373: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33367: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33368: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33369: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33370: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33371: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33372: -- 5132302
33373: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33375:
33369: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33370: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33371: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33372: -- 5132302
33373: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33375:
33376: END IF;
33377:
33370: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33371: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33372: -- 5132302
33373: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33374: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33375:
33376: END IF;
33377:
33378: -- 4955764
33375:
33376: END IF;
33377:
33378: -- 4955764
33379: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33380: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33381:
33382:
33383: XLA_AE_LINES_PKG.ValidateCurrentLine;
33379: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33380: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33381:
33382:
33383: XLA_AE_LINES_PKG.ValidateCurrentLine;
33384: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33385:
33386: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33387: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33380: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33381:
33382:
33383: XLA_AE_LINES_PKG.ValidateCurrentLine;
33384: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33385:
33386: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33387: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33388: ,p_balance_type_code => l_balance_type_code);
33541: --
33542: -- bulk performance
33543: --
33544: l_balance_type_code VARCHAR2(1);
33545: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
33546: l_log_module VARCHAR2(240);
33547:
33548: --
33549: -- Upgrade strategy
33625: ') = 'Y'
33626: THEN
33627:
33628: --
33629: XLA_AE_LINES_PKG.SetNewLine;
33630:
33631: p_balance_type_code := l_balance_type_code;
33632: -- set the flag so later we will know whether the gain loss line needs to be created
33633:
33637:
33638: --
33639: -- bulk performance
33640: --
33641: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
33642: p_header_num => 0); -- 4262811
33643: --
33644: -- set accounting line options
33645: --
33642: p_header_num => 0); -- 4262811
33643: --
33644: -- set accounting line options
33645: --
33646: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
33647: p_natural_side_code => 'C'
33648: , p_gain_or_loss_flag => 'N'
33649: , p_gl_transfer_mode_code => 'S'
33650: , p_acct_entry_type_code => 'A'
33656: --
33657: --
33658: -- set accounting line type info
33659: --
33660: xla_ae_lines_pkg.SetAcctLineType
33661: (p_component_type => l_component_type
33662: ,p_event_type_code => l_event_type_code
33663: ,p_line_definition_owner_code => l_line_definition_owner_code
33664: ,p_line_definition_code => l_line_definition_code
33670: ,p_event_class_code => l_event_class_code);
33671: --
33672: -- set accounting class
33673: --
33674: xla_ae_lines_pkg.SetAcctClass(
33675: p_accounting_class_code => 'FV_CASH_CR'
33676: , p_ae_header_id => l_ae_header_id
33677: );
33678:
33678:
33679: --
33680: -- set rounding class
33681: --
33682: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33683: 'RECEIVABLE';
33684:
33685: --
33686: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33682: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33683: 'RECEIVABLE';
33684:
33685: --
33686: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33687: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33688: --
33689: -- bulk performance
33690: --
33683: 'RECEIVABLE';
33684:
33685: --
33686: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33687: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33688: --
33689: -- bulk performance
33690: --
33691: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33687: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33688: --
33689: -- bulk performance
33690: --
33691: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33692:
33693: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33694: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33695:
33689: -- bulk performance
33690: --
33691: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33692:
33693: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33694: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33695:
33696: -- 4955764
33697: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33693: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33694: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33695:
33696: -- 4955764
33697: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33698: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
33699:
33700: -- 4458381 Public Sector Enh
33701:
33737: l_rec_acct_attrs.array_num_value(15) := p_source_64;
33738: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
33739: l_rec_acct_attrs.array_char_value(16) := p_source_65;
33740:
33741: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33742: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33743:
33744: ---------------------------------------------------------------------------------------------------------------
33745: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33738: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
33739: l_rec_acct_attrs.array_char_value(16) := p_source_65;
33740:
33741: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33742: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33743:
33744: ---------------------------------------------------------------------------------------------------------------
33745: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33746: ---------------------------------------------------------------------------------------------------------------
33741: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33742: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33743:
33744: ---------------------------------------------------------------------------------------------------------------
33745: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33746: ---------------------------------------------------------------------------------------------------------------
33747: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33748:
33749: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33743:
33744: ---------------------------------------------------------------------------------------------------------------
33745: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33746: ---------------------------------------------------------------------------------------------------------------
33747: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33748:
33749: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33750: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33751:
33745: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33746: ---------------------------------------------------------------------------------------------------------------
33747: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33748:
33749: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33750: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33751:
33752: IF xla_accounting_cache_pkg.GetValueChar
33753: (p_source_code => 'LEDGER_CATEGORY_CODE'
33746: ---------------------------------------------------------------------------------------------------------------
33747: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33748:
33749: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33750: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33751:
33752: IF xla_accounting_cache_pkg.GetValueChar
33753: (p_source_code => 'LEDGER_CATEGORY_CODE'
33754: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
33757: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
33758: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
33759: )
33760: THEN
33761: xla_ae_lines_pkg.BflowUpgEntry
33762: (p_business_method_code => l_bflow_method_code
33763: ,p_business_class_code => l_bflow_class_code
33764: ,p_balance_type => l_balance_type_code);
33765: ELSE
33797: , x_value_type_code => l_adr_value_type_code
33798: , p_side => 'NA'
33799: );
33800:
33801: xla_ae_lines_pkg.set_ccid(
33802: p_code_combination_id => l_ccid
33803: , p_value_type_code => l_adr_value_type_code
33804: , p_transaction_coa_id => l_adr_transaction_coa_id
33805: , p_accounting_coa_id => l_adr_accounting_coa_id
33832: );
33833:
33834: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
33835:
33836: xla_ae_lines_pkg.set_segment(
33837: p_to_segment_code => 'GL_ACCOUNT'
33838: , p_segment_value => l_segment
33839: , p_from_segment_code => l_adr_value_segment_code
33840: , p_from_combination_id => l_adr_value_combination_id
33876: xla_accounting_err_pkg.build_message
33877: (p_appli_s_name => 'XLA'
33878: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
33879: ,p_token_1 => 'LINE_NUMBER'
33880: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
33881: ,p_token_2 => 'LINE_TYPE_NAME'
33882: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
33883: l_component_type
33884: ,l_component_code
33912: --
33913: --
33914: ------------------------------------------------------------------------------------------------
33915: -- 4219869 Business Flow
33916: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33917: -- Prior Entry. Currently, the following code is always generated.
33918: ------------------------------------------------------------------------------------------------
33919: XLA_AE_LINES_PKG.ValidateCurrentLine;
33920:
33915: -- 4219869 Business Flow
33916: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33917: -- Prior Entry. Currently, the following code is always generated.
33918: ------------------------------------------------------------------------------------------------
33919: XLA_AE_LINES_PKG.ValidateCurrentLine;
33920:
33921: ------------------------------------------------------------------------------------
33922: -- 4219869 Business Flow
33923: -- Populated credit and debit amounts -- Need to generate this within IF
33921: ------------------------------------------------------------------------------------
33922: -- 4219869 Business Flow
33923: -- Populated credit and debit amounts -- Need to generate this within IF
33924: ------------------------------------------------------------------------------------
33925: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33926:
33927: ----------------------------------------------------------------------------------
33928: -- 4219869 Business Flow
33929: -- Update journal entry status -- Need to generate this within IF
33953: -- To allow MPA report to determine if it should generate report process
33954: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33955: ------------------------------------------------------------------------------------------
33956:
33957: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33958: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33959: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33960: -- call ADRs
33961: -- Bug 4922099
33954: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33955: ------------------------------------------------------------------------------------------
33956:
33957: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33958: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33959: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33960: -- call ADRs
33961: -- Bug 4922099
33962: --
33978: , x_value_type_code => l_adr_value_type_code
33979: , p_side => 'NA'
33980: );
33981:
33982: xla_ae_lines_pkg.set_ccid(
33983: p_code_combination_id => l_ccid
33984: , p_value_type_code => l_adr_value_type_code
33985: , p_transaction_coa_id => l_adr_transaction_coa_id
33986: , p_accounting_coa_id => l_adr_accounting_coa_id
34013: );
34014:
34015: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
34016:
34017: xla_ae_lines_pkg.set_segment(
34018: p_to_segment_code => 'GL_ACCOUNT'
34019: , p_segment_value => l_segment
34020: , p_from_segment_code => l_adr_value_segment_code
34021: , p_from_combination_id => l_adr_value_combination_id
34044:
34045: --
34046: -- Update the line information that should be overwritten
34047: --
34048: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34049: p_header_num => 1);
34050: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34051:
34052: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34046: -- Update the line information that should be overwritten
34047: --
34048: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34049: p_header_num => 1);
34050: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34051:
34052: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34053:
34054: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34048: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34049: p_header_num => 1);
34050: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34051:
34052: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34053:
34054: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34055: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34056: END IF;
34051:
34052: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34053:
34054: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34055: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34056: END IF;
34057:
34058: --
34059: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34058: --
34059: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34060: --
34061: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
34062: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
34063: ELSE
34064: ---------------------------------------------------------------------------------------------------
34065: -- 4262811a Switch Sign
34066: ---------------------------------------------------------------------------------------------------
34063: ELSE
34064: ---------------------------------------------------------------------------------------------------
34065: -- 4262811a Switch Sign
34066: ---------------------------------------------------------------------------------------------------
34067: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34069: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34071: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34064: ---------------------------------------------------------------------------------------------------
34065: -- 4262811a Switch Sign
34066: ---------------------------------------------------------------------------------------------------
34067: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34069: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34071: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34072: -- 5132302
34065: -- 4262811a Switch Sign
34066: ---------------------------------------------------------------------------------------------------
34067: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34069: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34071: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34072: -- 5132302
34073: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34066: ---------------------------------------------------------------------------------------------------
34067: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34069: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34071: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34072: -- 5132302
34073: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34074: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34067: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34069: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34071: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34072: -- 5132302
34073: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34074: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34075:
34069: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34071: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34072: -- 5132302
34073: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34074: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34075:
34076: END IF;
34077:
34070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34071: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34072: -- 5132302
34073: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34074: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34075:
34076: END IF;
34077:
34078: -- 4955764
34075:
34076: END IF;
34077:
34078: -- 4955764
34079: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34080: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34081:
34082:
34083: XLA_AE_LINES_PKG.ValidateCurrentLine;
34079: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34080: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34081:
34082:
34083: XLA_AE_LINES_PKG.ValidateCurrentLine;
34084: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34085:
34086: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34087: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34080: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34081:
34082:
34083: XLA_AE_LINES_PKG.ValidateCurrentLine;
34084: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34085:
34086: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34087: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34088: ,p_balance_type_code => l_balance_type_code);
34241: --
34242: -- bulk performance
34243: --
34244: l_balance_type_code VARCHAR2(1);
34245: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
34246: l_log_module VARCHAR2(240);
34247:
34248: --
34249: -- Upgrade strategy
34325: ') = 'Y'
34326: THEN
34327:
34328: --
34329: XLA_AE_LINES_PKG.SetNewLine;
34330:
34331: p_balance_type_code := l_balance_type_code;
34332: -- set the flag so later we will know whether the gain loss line needs to be created
34333:
34337:
34338: --
34339: -- bulk performance
34340: --
34341: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
34342: p_header_num => 0); -- 4262811
34343: --
34344: -- set accounting line options
34345: --
34342: p_header_num => 0); -- 4262811
34343: --
34344: -- set accounting line options
34345: --
34346: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
34347: p_natural_side_code => 'D'
34348: , p_gain_or_loss_flag => 'N'
34349: , p_gl_transfer_mode_code => 'S'
34350: , p_acct_entry_type_code => 'A'
34356: --
34357: --
34358: -- set accounting line type info
34359: --
34360: xla_ae_lines_pkg.SetAcctLineType
34361: (p_component_type => l_component_type
34362: ,p_event_type_code => l_event_type_code
34363: ,p_line_definition_owner_code => l_line_definition_owner_code
34364: ,p_line_definition_code => l_line_definition_code
34370: ,p_event_class_code => l_event_class_code);
34371: --
34372: -- set accounting class
34373: --
34374: xla_ae_lines_pkg.SetAcctClass(
34375: p_accounting_class_code => 'FV_CASH_DR'
34376: , p_ae_header_id => l_ae_header_id
34377: );
34378:
34378:
34379: --
34380: -- set rounding class
34381: --
34382: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34383: 'RECEIVABLE';
34384:
34385: --
34386: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34382: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34383: 'RECEIVABLE';
34384:
34385: --
34386: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34387: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34388: --
34389: -- bulk performance
34390: --
34383: 'RECEIVABLE';
34384:
34385: --
34386: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34387: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34388: --
34389: -- bulk performance
34390: --
34391: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34387: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34388: --
34389: -- bulk performance
34390: --
34391: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34392:
34393: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34394: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34395:
34389: -- bulk performance
34390: --
34391: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34392:
34393: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34394: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34395:
34396: -- 4955764
34397: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34393: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34394: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34395:
34396: -- 4955764
34397: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34398: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
34399:
34400: -- 4458381 Public Sector Enh
34401:
34437: l_rec_acct_attrs.array_num_value(15) := p_source_64;
34438: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
34439: l_rec_acct_attrs.array_char_value(16) := p_source_65;
34440:
34441: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34442: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34443:
34444: ---------------------------------------------------------------------------------------------------------------
34445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34438: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
34439: l_rec_acct_attrs.array_char_value(16) := p_source_65;
34440:
34441: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34442: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34443:
34444: ---------------------------------------------------------------------------------------------------------------
34445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34446: ---------------------------------------------------------------------------------------------------------------
34441: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34442: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34443:
34444: ---------------------------------------------------------------------------------------------------------------
34445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34446: ---------------------------------------------------------------------------------------------------------------
34447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34448:
34449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34443:
34444: ---------------------------------------------------------------------------------------------------------------
34445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34446: ---------------------------------------------------------------------------------------------------------------
34447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34448:
34449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34450: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34451:
34445: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34446: ---------------------------------------------------------------------------------------------------------------
34447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34448:
34449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34450: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34451:
34452: IF xla_accounting_cache_pkg.GetValueChar
34453: (p_source_code => 'LEDGER_CATEGORY_CODE'
34446: ---------------------------------------------------------------------------------------------------------------
34447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34448:
34449: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34450: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34451:
34452: IF xla_accounting_cache_pkg.GetValueChar
34453: (p_source_code => 'LEDGER_CATEGORY_CODE'
34454: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
34457: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
34458: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
34459: )
34460: THEN
34461: xla_ae_lines_pkg.BflowUpgEntry
34462: (p_business_method_code => l_bflow_method_code
34463: ,p_business_class_code => l_bflow_class_code
34464: ,p_balance_type => l_balance_type_code);
34465: ELSE
34497: , x_value_type_code => l_adr_value_type_code
34498: , p_side => 'NA'
34499: );
34500:
34501: xla_ae_lines_pkg.set_ccid(
34502: p_code_combination_id => l_ccid
34503: , p_value_type_code => l_adr_value_type_code
34504: , p_transaction_coa_id => l_adr_transaction_coa_id
34505: , p_accounting_coa_id => l_adr_accounting_coa_id
34533: );
34534:
34535: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
34536:
34537: xla_ae_lines_pkg.set_segment(
34538: p_to_segment_code => 'GL_ACCOUNT'
34539: , p_segment_value => l_segment
34540: , p_from_segment_code => l_adr_value_segment_code
34541: , p_from_combination_id => l_adr_value_combination_id
34577: xla_accounting_err_pkg.build_message
34578: (p_appli_s_name => 'XLA'
34579: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
34580: ,p_token_1 => 'LINE_NUMBER'
34581: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
34582: ,p_token_2 => 'LINE_TYPE_NAME'
34583: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
34584: l_component_type
34585: ,l_component_code
34613: --
34614: --
34615: ------------------------------------------------------------------------------------------------
34616: -- 4219869 Business Flow
34617: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34618: -- Prior Entry. Currently, the following code is always generated.
34619: ------------------------------------------------------------------------------------------------
34620: XLA_AE_LINES_PKG.ValidateCurrentLine;
34621:
34616: -- 4219869 Business Flow
34617: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34618: -- Prior Entry. Currently, the following code is always generated.
34619: ------------------------------------------------------------------------------------------------
34620: XLA_AE_LINES_PKG.ValidateCurrentLine;
34621:
34622: ------------------------------------------------------------------------------------
34623: -- 4219869 Business Flow
34624: -- Populated credit and debit amounts -- Need to generate this within IF
34622: ------------------------------------------------------------------------------------
34623: -- 4219869 Business Flow
34624: -- Populated credit and debit amounts -- Need to generate this within IF
34625: ------------------------------------------------------------------------------------
34626: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34627:
34628: ----------------------------------------------------------------------------------
34629: -- 4219869 Business Flow
34630: -- Update journal entry status -- Need to generate this within IF
34654: -- To allow MPA report to determine if it should generate report process
34655: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34656: ------------------------------------------------------------------------------------------
34657:
34658: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34659: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34660: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34661: -- call ADRs
34662: -- Bug 4922099
34655: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34656: ------------------------------------------------------------------------------------------
34657:
34658: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34659: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34660: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34661: -- call ADRs
34662: -- Bug 4922099
34663: --
34679: , x_value_type_code => l_adr_value_type_code
34680: , p_side => 'NA'
34681: );
34682:
34683: xla_ae_lines_pkg.set_ccid(
34684: p_code_combination_id => l_ccid
34685: , p_value_type_code => l_adr_value_type_code
34686: , p_transaction_coa_id => l_adr_transaction_coa_id
34687: , p_accounting_coa_id => l_adr_accounting_coa_id
34715: );
34716:
34717: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
34718:
34719: xla_ae_lines_pkg.set_segment(
34720: p_to_segment_code => 'GL_ACCOUNT'
34721: , p_segment_value => l_segment
34722: , p_from_segment_code => l_adr_value_segment_code
34723: , p_from_combination_id => l_adr_value_combination_id
34746:
34747: --
34748: -- Update the line information that should be overwritten
34749: --
34750: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34751: p_header_num => 1);
34752: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34753:
34754: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34748: -- Update the line information that should be overwritten
34749: --
34750: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34751: p_header_num => 1);
34752: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34753:
34754: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34755:
34756: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34750: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34751: p_header_num => 1);
34752: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34753:
34754: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34755:
34756: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34757: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34758: END IF;
34753:
34754: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34755:
34756: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34757: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34758: END IF;
34759:
34760: --
34761: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34760: --
34761: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34762: --
34763: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
34764: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
34765: ELSE
34766: ---------------------------------------------------------------------------------------------------
34767: -- 4262811a Switch Sign
34768: ---------------------------------------------------------------------------------------------------
34765: ELSE
34766: ---------------------------------------------------------------------------------------------------
34767: -- 4262811a Switch Sign
34768: ---------------------------------------------------------------------------------------------------
34769: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34771: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34773: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34766: ---------------------------------------------------------------------------------------------------
34767: -- 4262811a Switch Sign
34768: ---------------------------------------------------------------------------------------------------
34769: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34771: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34773: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34774: -- 5132302
34767: -- 4262811a Switch Sign
34768: ---------------------------------------------------------------------------------------------------
34769: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34771: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34773: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34774: -- 5132302
34775: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34768: ---------------------------------------------------------------------------------------------------
34769: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34771: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34773: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34774: -- 5132302
34775: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34776: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34769: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34771: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34773: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34774: -- 5132302
34775: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34776: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34777:
34771: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34773: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34774: -- 5132302
34775: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34776: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34777:
34778: END IF;
34779:
34772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34773: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34774: -- 5132302
34775: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34776: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34777:
34778: END IF;
34779:
34780: -- 4955764
34777:
34778: END IF;
34779:
34780: -- 4955764
34781: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34782: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34783:
34784:
34785: XLA_AE_LINES_PKG.ValidateCurrentLine;
34781: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34782: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34783:
34784:
34785: XLA_AE_LINES_PKG.ValidateCurrentLine;
34786: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34787:
34788: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34789: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34782: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34783:
34784:
34785: XLA_AE_LINES_PKG.ValidateCurrentLine;
34786: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34787:
34788: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34789: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34790: ,p_balance_type_code => l_balance_type_code);
34939: --
34940: -- bulk performance
34941: --
34942: l_balance_type_code VARCHAR2(1);
34943: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
34944: l_log_module VARCHAR2(240);
34945:
34946: --
34947: -- Upgrade strategy
35015: ') = 'Y'
35016: THEN
35017:
35018: --
35019: XLA_AE_LINES_PKG.SetNewLine;
35020:
35021: p_balance_type_code := l_balance_type_code;
35022: -- set the flag so later we will know whether the gain loss line needs to be created
35023:
35027:
35028: --
35029: -- bulk performance
35030: --
35031: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
35032: p_header_num => 0); -- 4262811
35033: --
35034: -- set accounting line options
35035: --
35032: p_header_num => 0); -- 4262811
35033: --
35034: -- set accounting line options
35035: --
35036: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
35037: p_natural_side_code => 'C'
35038: , p_gain_or_loss_flag => 'N'
35039: , p_gl_transfer_mode_code => 'S'
35040: , p_acct_entry_type_code => 'A'
35046: --
35047: --
35048: -- set accounting line type info
35049: --
35050: xla_ae_lines_pkg.SetAcctLineType
35051: (p_component_type => l_component_type
35052: ,p_event_type_code => l_event_type_code
35053: ,p_line_definition_owner_code => l_line_definition_owner_code
35054: ,p_line_definition_code => l_line_definition_code
35060: ,p_event_class_code => l_event_class_code);
35061: --
35062: -- set accounting class
35063: --
35064: xla_ae_lines_pkg.SetAcctClass(
35065: p_accounting_class_code => 'FV_CASH_CR'
35066: , p_ae_header_id => l_ae_header_id
35067: );
35068:
35068:
35069: --
35070: -- set rounding class
35071: --
35072: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35073: 'RECEIVABLE';
35074:
35075: --
35076: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35072: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35073: 'RECEIVABLE';
35074:
35075: --
35076: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35077: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35078: --
35079: -- bulk performance
35080: --
35073: 'RECEIVABLE';
35074:
35075: --
35076: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35077: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35078: --
35079: -- bulk performance
35080: --
35081: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35077: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35078: --
35079: -- bulk performance
35080: --
35081: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35082:
35083: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35084: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35085:
35079: -- bulk performance
35080: --
35081: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35082:
35083: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35084: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35085:
35086: -- 4955764
35087: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35083: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35084: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35085:
35086: -- 4955764
35087: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35088: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
35089:
35090: -- 4458381 Public Sector Enh
35091:
35127: l_rec_acct_attrs.array_num_value(15) := p_source_64;
35128: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35129: l_rec_acct_attrs.array_char_value(16) := p_source_65;
35130:
35131: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35132: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35133:
35134: ---------------------------------------------------------------------------------------------------------------
35135: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35128: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35129: l_rec_acct_attrs.array_char_value(16) := p_source_65;
35130:
35131: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35132: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35133:
35134: ---------------------------------------------------------------------------------------------------------------
35135: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35136: ---------------------------------------------------------------------------------------------------------------
35131: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35132: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35133:
35134: ---------------------------------------------------------------------------------------------------------------
35135: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35136: ---------------------------------------------------------------------------------------------------------------
35137: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35138:
35139: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35133:
35134: ---------------------------------------------------------------------------------------------------------------
35135: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35136: ---------------------------------------------------------------------------------------------------------------
35137: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35138:
35139: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35140: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35141:
35135: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35136: ---------------------------------------------------------------------------------------------------------------
35137: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35138:
35139: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35140: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35141:
35142: IF xla_accounting_cache_pkg.GetValueChar
35143: (p_source_code => 'LEDGER_CATEGORY_CODE'
35136: ---------------------------------------------------------------------------------------------------------------
35137: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35138:
35139: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35140: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35141:
35142: IF xla_accounting_cache_pkg.GetValueChar
35143: (p_source_code => 'LEDGER_CATEGORY_CODE'
35144: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
35147: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
35148: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
35149: )
35150: THEN
35151: xla_ae_lines_pkg.BflowUpgEntry
35152: (p_business_method_code => l_bflow_method_code
35153: ,p_business_class_code => l_bflow_class_code
35154: ,p_balance_type => l_balance_type_code);
35155: ELSE
35187: , x_value_type_code => l_adr_value_type_code
35188: , p_side => 'NA'
35189: );
35190:
35191: xla_ae_lines_pkg.set_ccid(
35192: p_code_combination_id => l_ccid
35193: , p_value_type_code => l_adr_value_type_code
35194: , p_transaction_coa_id => l_adr_transaction_coa_id
35195: , p_accounting_coa_id => l_adr_accounting_coa_id
35220: );
35221:
35222: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
35223:
35224: xla_ae_lines_pkg.set_segment(
35225: p_to_segment_code => 'GL_ACCOUNT'
35226: , p_segment_value => l_segment
35227: , p_from_segment_code => l_adr_value_segment_code
35228: , p_from_combination_id => l_adr_value_combination_id
35264: xla_accounting_err_pkg.build_message
35265: (p_appli_s_name => 'XLA'
35266: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
35267: ,p_token_1 => 'LINE_NUMBER'
35268: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
35269: ,p_token_2 => 'LINE_TYPE_NAME'
35270: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
35271: l_component_type
35272: ,l_component_code
35300: --
35301: --
35302: ------------------------------------------------------------------------------------------------
35303: -- 4219869 Business Flow
35304: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35305: -- Prior Entry. Currently, the following code is always generated.
35306: ------------------------------------------------------------------------------------------------
35307: XLA_AE_LINES_PKG.ValidateCurrentLine;
35308:
35303: -- 4219869 Business Flow
35304: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35305: -- Prior Entry. Currently, the following code is always generated.
35306: ------------------------------------------------------------------------------------------------
35307: XLA_AE_LINES_PKG.ValidateCurrentLine;
35308:
35309: ------------------------------------------------------------------------------------
35310: -- 4219869 Business Flow
35311: -- Populated credit and debit amounts -- Need to generate this within IF
35309: ------------------------------------------------------------------------------------
35310: -- 4219869 Business Flow
35311: -- Populated credit and debit amounts -- Need to generate this within IF
35312: ------------------------------------------------------------------------------------
35313: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35314:
35315: ----------------------------------------------------------------------------------
35316: -- 4219869 Business Flow
35317: -- Update journal entry status -- Need to generate this within IF
35341: -- To allow MPA report to determine if it should generate report process
35342: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35343: ------------------------------------------------------------------------------------------
35344:
35345: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35346: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35347: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35348: -- call ADRs
35349: -- Bug 4922099
35342: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35343: ------------------------------------------------------------------------------------------
35344:
35345: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35346: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35347: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35348: -- call ADRs
35349: -- Bug 4922099
35350: --
35366: , x_value_type_code => l_adr_value_type_code
35367: , p_side => 'NA'
35368: );
35369:
35370: xla_ae_lines_pkg.set_ccid(
35371: p_code_combination_id => l_ccid
35372: , p_value_type_code => l_adr_value_type_code
35373: , p_transaction_coa_id => l_adr_transaction_coa_id
35374: , p_accounting_coa_id => l_adr_accounting_coa_id
35399: );
35400:
35401: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
35402:
35403: xla_ae_lines_pkg.set_segment(
35404: p_to_segment_code => 'GL_ACCOUNT'
35405: , p_segment_value => l_segment
35406: , p_from_segment_code => l_adr_value_segment_code
35407: , p_from_combination_id => l_adr_value_combination_id
35430:
35431: --
35432: -- Update the line information that should be overwritten
35433: --
35434: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35435: p_header_num => 1);
35436: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35437:
35438: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35432: -- Update the line information that should be overwritten
35433: --
35434: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35435: p_header_num => 1);
35436: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35437:
35438: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35439:
35440: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35434: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35435: p_header_num => 1);
35436: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35437:
35438: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35439:
35440: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35441: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35442: END IF;
35437:
35438: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35439:
35440: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35441: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35442: END IF;
35443:
35444: --
35445: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35444: --
35445: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35446: --
35447: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
35448: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
35449: ELSE
35450: ---------------------------------------------------------------------------------------------------
35451: -- 4262811a Switch Sign
35452: ---------------------------------------------------------------------------------------------------
35449: ELSE
35450: ---------------------------------------------------------------------------------------------------
35451: -- 4262811a Switch Sign
35452: ---------------------------------------------------------------------------------------------------
35453: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35455: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35457: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35450: ---------------------------------------------------------------------------------------------------
35451: -- 4262811a Switch Sign
35452: ---------------------------------------------------------------------------------------------------
35453: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35455: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35457: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35458: -- 5132302
35451: -- 4262811a Switch Sign
35452: ---------------------------------------------------------------------------------------------------
35453: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35455: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35457: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35458: -- 5132302
35459: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35452: ---------------------------------------------------------------------------------------------------
35453: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35455: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35457: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35458: -- 5132302
35459: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35460: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35453: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35455: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35457: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35458: -- 5132302
35459: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35460: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35461:
35455: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35457: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35458: -- 5132302
35459: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35460: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35461:
35462: END IF;
35463:
35456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35457: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35458: -- 5132302
35459: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35460: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35461:
35462: END IF;
35463:
35464: -- 4955764
35461:
35462: END IF;
35463:
35464: -- 4955764
35465: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35466: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35467:
35468:
35469: XLA_AE_LINES_PKG.ValidateCurrentLine;
35465: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35466: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35467:
35468:
35469: XLA_AE_LINES_PKG.ValidateCurrentLine;
35470: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35471:
35472: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35473: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35466: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35467:
35468:
35469: XLA_AE_LINES_PKG.ValidateCurrentLine;
35470: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35471:
35472: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35473: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35474: ,p_balance_type_code => l_balance_type_code);
35623: --
35624: -- bulk performance
35625: --
35626: l_balance_type_code VARCHAR2(1);
35627: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
35628: l_log_module VARCHAR2(240);
35629:
35630: --
35631: -- Upgrade strategy
35699: ') = 'Y'
35700: THEN
35701:
35702: --
35703: XLA_AE_LINES_PKG.SetNewLine;
35704:
35705: p_balance_type_code := l_balance_type_code;
35706: -- set the flag so later we will know whether the gain loss line needs to be created
35707:
35711:
35712: --
35713: -- bulk performance
35714: --
35715: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
35716: p_header_num => 0); -- 4262811
35717: --
35718: -- set accounting line options
35719: --
35716: p_header_num => 0); -- 4262811
35717: --
35718: -- set accounting line options
35719: --
35720: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
35721: p_natural_side_code => 'D'
35722: , p_gain_or_loss_flag => 'N'
35723: , p_gl_transfer_mode_code => 'S'
35724: , p_acct_entry_type_code => 'A'
35730: --
35731: --
35732: -- set accounting line type info
35733: --
35734: xla_ae_lines_pkg.SetAcctLineType
35735: (p_component_type => l_component_type
35736: ,p_event_type_code => l_event_type_code
35737: ,p_line_definition_owner_code => l_line_definition_owner_code
35738: ,p_line_definition_code => l_line_definition_code
35744: ,p_event_class_code => l_event_class_code);
35745: --
35746: -- set accounting class
35747: --
35748: xla_ae_lines_pkg.SetAcctClass(
35749: p_accounting_class_code => 'FV_CASH_DR'
35750: , p_ae_header_id => l_ae_header_id
35751: );
35752:
35752:
35753: --
35754: -- set rounding class
35755: --
35756: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35757: 'RECEIVABLE';
35758:
35759: --
35760: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35756: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35757: 'RECEIVABLE';
35758:
35759: --
35760: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35761: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35762: --
35763: -- bulk performance
35764: --
35757: 'RECEIVABLE';
35758:
35759: --
35760: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35761: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35762: --
35763: -- bulk performance
35764: --
35765: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35761: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35762: --
35763: -- bulk performance
35764: --
35765: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35766:
35767: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35768: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35769:
35763: -- bulk performance
35764: --
35765: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35766:
35767: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35768: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35769:
35770: -- 4955764
35771: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35767: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35768: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35769:
35770: -- 4955764
35771: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35772: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
35773:
35774: -- 4458381 Public Sector Enh
35775:
35811: l_rec_acct_attrs.array_num_value(15) := p_source_64;
35812: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35813: l_rec_acct_attrs.array_char_value(16) := p_source_65;
35814:
35815: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35816: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35817:
35818: ---------------------------------------------------------------------------------------------------------------
35819: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35812: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35813: l_rec_acct_attrs.array_char_value(16) := p_source_65;
35814:
35815: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35816: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35817:
35818: ---------------------------------------------------------------------------------------------------------------
35819: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35820: ---------------------------------------------------------------------------------------------------------------
35815: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35816: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35817:
35818: ---------------------------------------------------------------------------------------------------------------
35819: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35820: ---------------------------------------------------------------------------------------------------------------
35821: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35822:
35823: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35817:
35818: ---------------------------------------------------------------------------------------------------------------
35819: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35820: ---------------------------------------------------------------------------------------------------------------
35821: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35822:
35823: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35824: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35825:
35819: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35820: ---------------------------------------------------------------------------------------------------------------
35821: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35822:
35823: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35824: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35825:
35826: IF xla_accounting_cache_pkg.GetValueChar
35827: (p_source_code => 'LEDGER_CATEGORY_CODE'
35820: ---------------------------------------------------------------------------------------------------------------
35821: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35822:
35823: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35824: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35825:
35826: IF xla_accounting_cache_pkg.GetValueChar
35827: (p_source_code => 'LEDGER_CATEGORY_CODE'
35828: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
35831: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
35832: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
35833: )
35834: THEN
35835: xla_ae_lines_pkg.BflowUpgEntry
35836: (p_business_method_code => l_bflow_method_code
35837: ,p_business_class_code => l_bflow_class_code
35838: ,p_balance_type => l_balance_type_code);
35839: ELSE
35871: , x_value_type_code => l_adr_value_type_code
35872: , p_side => 'NA'
35873: );
35874:
35875: xla_ae_lines_pkg.set_ccid(
35876: p_code_combination_id => l_ccid
35877: , p_value_type_code => l_adr_value_type_code
35878: , p_transaction_coa_id => l_adr_transaction_coa_id
35879: , p_accounting_coa_id => l_adr_accounting_coa_id
35904: );
35905:
35906: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
35907:
35908: xla_ae_lines_pkg.set_segment(
35909: p_to_segment_code => 'GL_ACCOUNT'
35910: , p_segment_value => l_segment
35911: , p_from_segment_code => l_adr_value_segment_code
35912: , p_from_combination_id => l_adr_value_combination_id
35948: xla_accounting_err_pkg.build_message
35949: (p_appli_s_name => 'XLA'
35950: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
35951: ,p_token_1 => 'LINE_NUMBER'
35952: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
35953: ,p_token_2 => 'LINE_TYPE_NAME'
35954: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
35955: l_component_type
35956: ,l_component_code
35984: --
35985: --
35986: ------------------------------------------------------------------------------------------------
35987: -- 4219869 Business Flow
35988: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35989: -- Prior Entry. Currently, the following code is always generated.
35990: ------------------------------------------------------------------------------------------------
35991: XLA_AE_LINES_PKG.ValidateCurrentLine;
35992:
35987: -- 4219869 Business Flow
35988: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35989: -- Prior Entry. Currently, the following code is always generated.
35990: ------------------------------------------------------------------------------------------------
35991: XLA_AE_LINES_PKG.ValidateCurrentLine;
35992:
35993: ------------------------------------------------------------------------------------
35994: -- 4219869 Business Flow
35995: -- Populated credit and debit amounts -- Need to generate this within IF
35993: ------------------------------------------------------------------------------------
35994: -- 4219869 Business Flow
35995: -- Populated credit and debit amounts -- Need to generate this within IF
35996: ------------------------------------------------------------------------------------
35997: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35998:
35999: ----------------------------------------------------------------------------------
36000: -- 4219869 Business Flow
36001: -- Update journal entry status -- Need to generate this within IF
36025: -- To allow MPA report to determine if it should generate report process
36026: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36027: ------------------------------------------------------------------------------------------
36028:
36029: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36030: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36031: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36032: -- call ADRs
36033: -- Bug 4922099
36026: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36027: ------------------------------------------------------------------------------------------
36028:
36029: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36030: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36031: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36032: -- call ADRs
36033: -- Bug 4922099
36034: --
36050: , x_value_type_code => l_adr_value_type_code
36051: , p_side => 'NA'
36052: );
36053:
36054: xla_ae_lines_pkg.set_ccid(
36055: p_code_combination_id => l_ccid
36056: , p_value_type_code => l_adr_value_type_code
36057: , p_transaction_coa_id => l_adr_transaction_coa_id
36058: , p_accounting_coa_id => l_adr_accounting_coa_id
36083: );
36084:
36085: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
36086:
36087: xla_ae_lines_pkg.set_segment(
36088: p_to_segment_code => 'GL_ACCOUNT'
36089: , p_segment_value => l_segment
36090: , p_from_segment_code => l_adr_value_segment_code
36091: , p_from_combination_id => l_adr_value_combination_id
36114:
36115: --
36116: -- Update the line information that should be overwritten
36117: --
36118: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36119: p_header_num => 1);
36120: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36121:
36122: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36116: -- Update the line information that should be overwritten
36117: --
36118: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36119: p_header_num => 1);
36120: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36121:
36122: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36123:
36124: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36118: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36119: p_header_num => 1);
36120: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36121:
36122: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36123:
36124: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36125: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36126: END IF;
36121:
36122: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36123:
36124: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36125: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36126: END IF;
36127:
36128: --
36129: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36128: --
36129: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36130: --
36131: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
36132: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
36133: ELSE
36134: ---------------------------------------------------------------------------------------------------
36135: -- 4262811a Switch Sign
36136: ---------------------------------------------------------------------------------------------------
36133: ELSE
36134: ---------------------------------------------------------------------------------------------------
36135: -- 4262811a Switch Sign
36136: ---------------------------------------------------------------------------------------------------
36137: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36138: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36139: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36140: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36141: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36134: ---------------------------------------------------------------------------------------------------
36135: -- 4262811a Switch Sign
36136: ---------------------------------------------------------------------------------------------------
36137: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36138: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36139: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36140: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36141: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36142: -- 5132302
36135: -- 4262811a Switch Sign
36136: ---------------------------------------------------------------------------------------------------
36137: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36138: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36139: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36140: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36141: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36142: -- 5132302
36143: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36136: ---------------------------------------------------------------------------------------------------
36137: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36138: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36139: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36140: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36141: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36142: -- 5132302
36143: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36144: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36137: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36138: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36139: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36140: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36141: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36142: -- 5132302
36143: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36144: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36145:
36139: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36140: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36141: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36142: -- 5132302
36143: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36144: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36145:
36146: END IF;
36147:
36140: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36141: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36142: -- 5132302
36143: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36144: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36145:
36146: END IF;
36147:
36148: -- 4955764
36145:
36146: END IF;
36147:
36148: -- 4955764
36149: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36150: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36151:
36152:
36153: XLA_AE_LINES_PKG.ValidateCurrentLine;
36149: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36150: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36151:
36152:
36153: XLA_AE_LINES_PKG.ValidateCurrentLine;
36154: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36155:
36156: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36157: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36150: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36151:
36152:
36153: XLA_AE_LINES_PKG.ValidateCurrentLine;
36154: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36155:
36156: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36157: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36158: ,p_balance_type_code => l_balance_type_code);
36289: --
36290: -- bulk performance
36291: --
36292: l_balance_type_code VARCHAR2(1);
36293: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
36294: l_log_module VARCHAR2(240);
36295:
36296: --
36297: -- Upgrade strategy
36357: ') = 'REC'
36358: THEN
36359:
36360: --
36361: XLA_AE_LINES_PKG.SetNewLine;
36362:
36363: p_balance_type_code := l_balance_type_code;
36364: -- set the flag so later we will know whether the gain loss line needs to be created
36365:
36369:
36370: --
36371: -- bulk performance
36372: --
36373: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
36374: p_header_num => 0); -- 4262811
36375: --
36376: -- set accounting line options
36377: --
36374: p_header_num => 0); -- 4262811
36375: --
36376: -- set accounting line options
36377: --
36378: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
36379: p_natural_side_code => 'D'
36380: , p_gain_or_loss_flag => 'N'
36381: , p_gl_transfer_mode_code => 'S'
36382: , p_acct_entry_type_code => 'A'
36388: --
36389: --
36390: -- set accounting line type info
36391: --
36392: xla_ae_lines_pkg.SetAcctLineType
36393: (p_component_type => l_component_type
36394: ,p_event_type_code => l_event_type_code
36395: ,p_line_definition_owner_code => l_line_definition_owner_code
36396: ,p_line_definition_code => l_line_definition_code
36402: ,p_event_class_code => l_event_class_code);
36403: --
36404: -- set accounting class
36405: --
36406: xla_ae_lines_pkg.SetAcctClass(
36407: p_accounting_class_code => 'RECEIVABLE'
36408: , p_ae_header_id => l_ae_header_id
36409: );
36410:
36410:
36411: --
36412: -- set rounding class
36413: --
36414: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36415: 'RECEIVABLE';
36416:
36417: --
36418: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36414: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36415: 'RECEIVABLE';
36416:
36417: --
36418: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36419: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36420: --
36421: -- bulk performance
36422: --
36415: 'RECEIVABLE';
36416:
36417: --
36418: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36419: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36420: --
36421: -- bulk performance
36422: --
36423: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36419: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36420: --
36421: -- bulk performance
36422: --
36423: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36424:
36425: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36426: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36427:
36421: -- bulk performance
36422: --
36423: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36424:
36425: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36426: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36427:
36428: -- 4955764
36429: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36425: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36426: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36427:
36428: -- 4955764
36429: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36430: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
36431:
36432: -- 4458381 Public Sector Enh
36433:
36459: l_rec_acct_attrs.array_num_value(10) := p_source_31;
36460: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
36461: l_rec_acct_attrs.array_char_value(11) := p_source_32;
36462:
36463: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36464: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36465:
36466: ---------------------------------------------------------------------------------------------------------------
36467: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36460: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
36461: l_rec_acct_attrs.array_char_value(11) := p_source_32;
36462:
36463: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36464: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36465:
36466: ---------------------------------------------------------------------------------------------------------------
36467: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36468: ---------------------------------------------------------------------------------------------------------------
36463: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36464: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36465:
36466: ---------------------------------------------------------------------------------------------------------------
36467: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36468: ---------------------------------------------------------------------------------------------------------------
36469: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36470:
36471: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36465:
36466: ---------------------------------------------------------------------------------------------------------------
36467: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36468: ---------------------------------------------------------------------------------------------------------------
36469: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36470:
36471: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36472: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36473:
36467: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36468: ---------------------------------------------------------------------------------------------------------------
36469: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36470:
36471: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36472: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36473:
36474: IF xla_accounting_cache_pkg.GetValueChar
36475: (p_source_code => 'LEDGER_CATEGORY_CODE'
36468: ---------------------------------------------------------------------------------------------------------------
36469: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36470:
36471: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36472: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36473:
36474: IF xla_accounting_cache_pkg.GetValueChar
36475: (p_source_code => 'LEDGER_CATEGORY_CODE'
36476: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
36479: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
36480: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
36481: )
36482: THEN
36483: xla_ae_lines_pkg.BflowUpgEntry
36484: (p_business_method_code => l_bflow_method_code
36485: ,p_business_class_code => l_bflow_class_code
36486: ,p_balance_type => l_balance_type_code);
36487: ELSE
36519: , x_value_type_code => l_adr_value_type_code
36520: , p_side => 'NA'
36521: );
36522:
36523: xla_ae_lines_pkg.set_ccid(
36524: p_code_combination_id => l_ccid
36525: , p_value_type_code => l_adr_value_type_code
36526: , p_transaction_coa_id => l_adr_transaction_coa_id
36527: , p_accounting_coa_id => l_adr_accounting_coa_id
36555: xla_accounting_err_pkg.build_message
36556: (p_appli_s_name => 'XLA'
36557: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
36558: ,p_token_1 => 'LINE_NUMBER'
36559: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
36560: ,p_token_2 => 'LINE_TYPE_NAME'
36561: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
36562: l_component_type
36563: ,l_component_code
36591: --
36592: --
36593: ------------------------------------------------------------------------------------------------
36594: -- 4219869 Business Flow
36595: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36596: -- Prior Entry. Currently, the following code is always generated.
36597: ------------------------------------------------------------------------------------------------
36598: XLA_AE_LINES_PKG.ValidateCurrentLine;
36599:
36594: -- 4219869 Business Flow
36595: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36596: -- Prior Entry. Currently, the following code is always generated.
36597: ------------------------------------------------------------------------------------------------
36598: XLA_AE_LINES_PKG.ValidateCurrentLine;
36599:
36600: ------------------------------------------------------------------------------------
36601: -- 4219869 Business Flow
36602: -- Populated credit and debit amounts -- Need to generate this within IF
36600: ------------------------------------------------------------------------------------
36601: -- 4219869 Business Flow
36602: -- Populated credit and debit amounts -- Need to generate this within IF
36603: ------------------------------------------------------------------------------------
36604: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36605:
36606: ----------------------------------------------------------------------------------
36607: -- 4219869 Business Flow
36608: -- Update journal entry status -- Need to generate this within IF
36632: -- To allow MPA report to determine if it should generate report process
36633: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36634: ------------------------------------------------------------------------------------------
36635:
36636: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36637: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36638: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36639: -- call ADRs
36640: -- Bug 4922099
36633: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36634: ------------------------------------------------------------------------------------------
36635:
36636: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36637: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36638: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36639: -- call ADRs
36640: -- Bug 4922099
36641: --
36657: , x_value_type_code => l_adr_value_type_code
36658: , p_side => 'NA'
36659: );
36660:
36661: xla_ae_lines_pkg.set_ccid(
36662: p_code_combination_id => l_ccid
36663: , p_value_type_code => l_adr_value_type_code
36664: , p_transaction_coa_id => l_adr_transaction_coa_id
36665: , p_accounting_coa_id => l_adr_accounting_coa_id
36680:
36681: --
36682: -- Update the line information that should be overwritten
36683: --
36684: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36685: p_header_num => 1);
36686: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36687:
36688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36682: -- Update the line information that should be overwritten
36683: --
36684: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36685: p_header_num => 1);
36686: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36687:
36688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36689:
36690: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36684: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36685: p_header_num => 1);
36686: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36687:
36688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36689:
36690: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36691: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36692: END IF;
36687:
36688: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36689:
36690: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36691: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36692: END IF;
36693:
36694: --
36695: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36694: --
36695: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36696: --
36697: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
36698: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
36699: ELSE
36700: ---------------------------------------------------------------------------------------------------
36701: -- 4262811a Switch Sign
36702: ---------------------------------------------------------------------------------------------------
36699: ELSE
36700: ---------------------------------------------------------------------------------------------------
36701: -- 4262811a Switch Sign
36702: ---------------------------------------------------------------------------------------------------
36703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36700: ---------------------------------------------------------------------------------------------------
36701: -- 4262811a Switch Sign
36702: ---------------------------------------------------------------------------------------------------
36703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36708: -- 5132302
36701: -- 4262811a Switch Sign
36702: ---------------------------------------------------------------------------------------------------
36703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36708: -- 5132302
36709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36702: ---------------------------------------------------------------------------------------------------
36703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36708: -- 5132302
36709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36703: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36708: -- 5132302
36709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36711:
36705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36708: -- 5132302
36709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36711:
36712: END IF;
36713:
36706: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36708: -- 5132302
36709: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36711:
36712: END IF;
36713:
36714: -- 4955764
36711:
36712: END IF;
36713:
36714: -- 4955764
36715: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36716: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36717:
36718:
36719: XLA_AE_LINES_PKG.ValidateCurrentLine;
36715: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36716: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36717:
36718:
36719: XLA_AE_LINES_PKG.ValidateCurrentLine;
36720: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36721:
36722: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36723: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36716: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36717:
36718:
36719: XLA_AE_LINES_PKG.ValidateCurrentLine;
36720: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36721:
36722: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36723: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36724: ,p_balance_type_code => l_balance_type_code);
36855: --
36856: -- bulk performance
36857: --
36858: l_balance_type_code VARCHAR2(1);
36859: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
36860: l_log_module VARCHAR2(240);
36861:
36862: --
36863: -- Upgrade strategy
36923: ') = 'REV'
36924: THEN
36925:
36926: --
36927: XLA_AE_LINES_PKG.SetNewLine;
36928:
36929: p_balance_type_code := l_balance_type_code;
36930: -- set the flag so later we will know whether the gain loss line needs to be created
36931:
36935:
36936: --
36937: -- bulk performance
36938: --
36939: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
36940: p_header_num => 0); -- 4262811
36941: --
36942: -- set accounting line options
36943: --
36940: p_header_num => 0); -- 4262811
36941: --
36942: -- set accounting line options
36943: --
36944: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
36945: p_natural_side_code => 'C'
36946: , p_gain_or_loss_flag => 'N'
36947: , p_gl_transfer_mode_code => 'S'
36948: , p_acct_entry_type_code => 'A'
36954: --
36955: --
36956: -- set accounting line type info
36957: --
36958: xla_ae_lines_pkg.SetAcctLineType
36959: (p_component_type => l_component_type
36960: ,p_event_type_code => l_event_type_code
36961: ,p_line_definition_owner_code => l_line_definition_owner_code
36962: ,p_line_definition_code => l_line_definition_code
36968: ,p_event_class_code => l_event_class_code);
36969: --
36970: -- set accounting class
36971: --
36972: xla_ae_lines_pkg.SetAcctClass(
36973: p_accounting_class_code => 'REVENUE'
36974: , p_ae_header_id => l_ae_header_id
36975: );
36976:
36976:
36977: --
36978: -- set rounding class
36979: --
36980: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36981: 'RECEIVABLE';
36982:
36983: --
36984: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36980: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36981: 'RECEIVABLE';
36982:
36983: --
36984: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36985: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36986: --
36987: -- bulk performance
36988: --
36981: 'RECEIVABLE';
36982:
36983: --
36984: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36985: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36986: --
36987: -- bulk performance
36988: --
36989: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36985: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36986: --
36987: -- bulk performance
36988: --
36989: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36990:
36991: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36992: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36993:
36987: -- bulk performance
36988: --
36989: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36990:
36991: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36992: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36993:
36994: -- 4955764
36995: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36991: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36992: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36993:
36994: -- 4955764
36995: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36996: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
36997:
36998: -- 4458381 Public Sector Enh
36999:
37025: l_rec_acct_attrs.array_num_value(10) := p_source_31;
37026: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
37027: l_rec_acct_attrs.array_char_value(11) := p_source_32;
37028:
37029: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37030: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37031:
37032: ---------------------------------------------------------------------------------------------------------------
37033: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37026: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
37027: l_rec_acct_attrs.array_char_value(11) := p_source_32;
37028:
37029: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37030: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37031:
37032: ---------------------------------------------------------------------------------------------------------------
37033: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37034: ---------------------------------------------------------------------------------------------------------------
37029: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37030: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37031:
37032: ---------------------------------------------------------------------------------------------------------------
37033: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37034: ---------------------------------------------------------------------------------------------------------------
37035: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37036:
37037: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37031:
37032: ---------------------------------------------------------------------------------------------------------------
37033: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37034: ---------------------------------------------------------------------------------------------------------------
37035: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37036:
37037: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37038: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37039:
37033: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37034: ---------------------------------------------------------------------------------------------------------------
37035: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37036:
37037: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37038: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37039:
37040: IF xla_accounting_cache_pkg.GetValueChar
37041: (p_source_code => 'LEDGER_CATEGORY_CODE'
37034: ---------------------------------------------------------------------------------------------------------------
37035: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37036:
37037: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37038: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37039:
37040: IF xla_accounting_cache_pkg.GetValueChar
37041: (p_source_code => 'LEDGER_CATEGORY_CODE'
37042: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
37045: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
37046: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
37047: )
37048: THEN
37049: xla_ae_lines_pkg.BflowUpgEntry
37050: (p_business_method_code => l_bflow_method_code
37051: ,p_business_class_code => l_bflow_class_code
37052: ,p_balance_type => l_balance_type_code);
37053: ELSE
37085: , x_value_type_code => l_adr_value_type_code
37086: , p_side => 'NA'
37087: );
37088:
37089: xla_ae_lines_pkg.set_ccid(
37090: p_code_combination_id => l_ccid
37091: , p_value_type_code => l_adr_value_type_code
37092: , p_transaction_coa_id => l_adr_transaction_coa_id
37093: , p_accounting_coa_id => l_adr_accounting_coa_id
37121: xla_accounting_err_pkg.build_message
37122: (p_appli_s_name => 'XLA'
37123: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
37124: ,p_token_1 => 'LINE_NUMBER'
37125: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
37126: ,p_token_2 => 'LINE_TYPE_NAME'
37127: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
37128: l_component_type
37129: ,l_component_code
37157: --
37158: --
37159: ------------------------------------------------------------------------------------------------
37160: -- 4219869 Business Flow
37161: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37162: -- Prior Entry. Currently, the following code is always generated.
37163: ------------------------------------------------------------------------------------------------
37164: XLA_AE_LINES_PKG.ValidateCurrentLine;
37165:
37160: -- 4219869 Business Flow
37161: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37162: -- Prior Entry. Currently, the following code is always generated.
37163: ------------------------------------------------------------------------------------------------
37164: XLA_AE_LINES_PKG.ValidateCurrentLine;
37165:
37166: ------------------------------------------------------------------------------------
37167: -- 4219869 Business Flow
37168: -- Populated credit and debit amounts -- Need to generate this within IF
37166: ------------------------------------------------------------------------------------
37167: -- 4219869 Business Flow
37168: -- Populated credit and debit amounts -- Need to generate this within IF
37169: ------------------------------------------------------------------------------------
37170: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37171:
37172: ----------------------------------------------------------------------------------
37173: -- 4219869 Business Flow
37174: -- Update journal entry status -- Need to generate this within IF
37198: -- To allow MPA report to determine if it should generate report process
37199: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37200: ------------------------------------------------------------------------------------------
37201:
37202: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37203: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37204: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37205: -- call ADRs
37206: -- Bug 4922099
37199: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37200: ------------------------------------------------------------------------------------------
37201:
37202: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37203: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37204: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37205: -- call ADRs
37206: -- Bug 4922099
37207: --
37223: , x_value_type_code => l_adr_value_type_code
37224: , p_side => 'NA'
37225: );
37226:
37227: xla_ae_lines_pkg.set_ccid(
37228: p_code_combination_id => l_ccid
37229: , p_value_type_code => l_adr_value_type_code
37230: , p_transaction_coa_id => l_adr_transaction_coa_id
37231: , p_accounting_coa_id => l_adr_accounting_coa_id
37246:
37247: --
37248: -- Update the line information that should be overwritten
37249: --
37250: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37251: p_header_num => 1);
37252: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37253:
37254: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37248: -- Update the line information that should be overwritten
37249: --
37250: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37251: p_header_num => 1);
37252: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37253:
37254: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37255:
37256: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37250: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37251: p_header_num => 1);
37252: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37253:
37254: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37255:
37256: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37257: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37258: END IF;
37253:
37254: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37255:
37256: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37257: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37258: END IF;
37259:
37260: --
37261: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37260: --
37261: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37262: --
37263: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
37264: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
37265: ELSE
37266: ---------------------------------------------------------------------------------------------------
37267: -- 4262811a Switch Sign
37268: ---------------------------------------------------------------------------------------------------
37265: ELSE
37266: ---------------------------------------------------------------------------------------------------
37267: -- 4262811a Switch Sign
37268: ---------------------------------------------------------------------------------------------------
37269: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37273: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37266: ---------------------------------------------------------------------------------------------------
37267: -- 4262811a Switch Sign
37268: ---------------------------------------------------------------------------------------------------
37269: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37273: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37274: -- 5132302
37267: -- 4262811a Switch Sign
37268: ---------------------------------------------------------------------------------------------------
37269: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37273: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37274: -- 5132302
37275: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37268: ---------------------------------------------------------------------------------------------------
37269: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37273: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37274: -- 5132302
37275: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37276: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37269: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37273: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37274: -- 5132302
37275: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37276: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37277:
37271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37273: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37274: -- 5132302
37275: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37276: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37277:
37278: END IF;
37279:
37272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37273: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37274: -- 5132302
37275: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37276: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37277:
37278: END IF;
37279:
37280: -- 4955764
37277:
37278: END IF;
37279:
37280: -- 4955764
37281: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37282: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37283:
37284:
37285: XLA_AE_LINES_PKG.ValidateCurrentLine;
37281: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37282: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37283:
37284:
37285: XLA_AE_LINES_PKG.ValidateCurrentLine;
37286: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37287:
37288: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37289: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37282: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37283:
37284:
37285: XLA_AE_LINES_PKG.ValidateCurrentLine;
37286: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37287:
37288: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37289: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37290: ,p_balance_type_code => l_balance_type_code);
37423: --
37424: -- bulk performance
37425: --
37426: l_balance_type_code VARCHAR2(1);
37427: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
37428: l_log_module VARCHAR2(240);
37429:
37430: --
37431: -- Upgrade strategy
37491: ') = 'CHARGES'
37492: THEN
37493:
37494: --
37495: XLA_AE_LINES_PKG.SetNewLine;
37496:
37497: p_balance_type_code := l_balance_type_code;
37498: -- set the flag so later we will know whether the gain loss line needs to be created
37499:
37503:
37504: --
37505: -- bulk performance
37506: --
37507: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
37508: p_header_num => 0); -- 4262811
37509: --
37510: -- set accounting line options
37511: --
37508: p_header_num => 0); -- 4262811
37509: --
37510: -- set accounting line options
37511: --
37512: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
37513: p_natural_side_code => 'C'
37514: , p_gain_or_loss_flag => 'N'
37515: , p_gl_transfer_mode_code => 'S'
37516: , p_acct_entry_type_code => 'A'
37522: --
37523: --
37524: -- set accounting line type info
37525: --
37526: xla_ae_lines_pkg.SetAcctLineType
37527: (p_component_type => l_component_type
37528: ,p_event_type_code => l_event_type_code
37529: ,p_line_definition_owner_code => l_line_definition_owner_code
37530: ,p_line_definition_code => l_line_definition_code
37536: ,p_event_class_code => l_event_class_code);
37537: --
37538: -- set accounting class
37539: --
37540: xla_ae_lines_pkg.SetAcctClass(
37541: p_accounting_class_code => 'CHARGES'
37542: , p_ae_header_id => l_ae_header_id
37543: );
37544:
37544:
37545: --
37546: -- set rounding class
37547: --
37548: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37549: 'RECEIVABLE';
37550:
37551: --
37552: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37548: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37549: 'RECEIVABLE';
37550:
37551: --
37552: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37553: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37554: --
37555: -- bulk performance
37556: --
37549: 'RECEIVABLE';
37550:
37551: --
37552: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37553: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37554: --
37555: -- bulk performance
37556: --
37557: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37553: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37554: --
37555: -- bulk performance
37556: --
37557: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37558:
37559: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37560: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37561:
37555: -- bulk performance
37556: --
37557: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37558:
37559: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37560: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37561:
37562: -- 4955764
37563: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37559: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37560: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37561:
37562: -- 4955764
37563: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37564: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
37565:
37566: -- 4458381 Public Sector Enh
37567:
37595: l_rec_acct_attrs.array_char_value(11) := p_source_32;
37596: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
37597: l_rec_acct_attrs.array_num_value(12) := p_source_55;
37598:
37599: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37600: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37601:
37602: ---------------------------------------------------------------------------------------------------------------
37603: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37596: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
37597: l_rec_acct_attrs.array_num_value(12) := p_source_55;
37598:
37599: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37600: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37601:
37602: ---------------------------------------------------------------------------------------------------------------
37603: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37604: ---------------------------------------------------------------------------------------------------------------
37599: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37600: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37601:
37602: ---------------------------------------------------------------------------------------------------------------
37603: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37604: ---------------------------------------------------------------------------------------------------------------
37605: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37606:
37607: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37601:
37602: ---------------------------------------------------------------------------------------------------------------
37603: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37604: ---------------------------------------------------------------------------------------------------------------
37605: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37606:
37607: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37608: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37609:
37603: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37604: ---------------------------------------------------------------------------------------------------------------
37605: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37606:
37607: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37608: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37609:
37610: IF xla_accounting_cache_pkg.GetValueChar
37611: (p_source_code => 'LEDGER_CATEGORY_CODE'
37604: ---------------------------------------------------------------------------------------------------------------
37605: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37606:
37607: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37608: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37609:
37610: IF xla_accounting_cache_pkg.GetValueChar
37611: (p_source_code => 'LEDGER_CATEGORY_CODE'
37612: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
37615: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
37616: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
37617: )
37618: THEN
37619: xla_ae_lines_pkg.BflowUpgEntry
37620: (p_business_method_code => l_bflow_method_code
37621: ,p_business_class_code => l_bflow_class_code
37622: ,p_balance_type => l_balance_type_code);
37623: ELSE
37655: , x_value_type_code => l_adr_value_type_code
37656: , p_side => 'NA'
37657: );
37658:
37659: xla_ae_lines_pkg.set_ccid(
37660: p_code_combination_id => l_ccid
37661: , p_value_type_code => l_adr_value_type_code
37662: , p_transaction_coa_id => l_adr_transaction_coa_id
37663: , p_accounting_coa_id => l_adr_accounting_coa_id
37691: xla_accounting_err_pkg.build_message
37692: (p_appli_s_name => 'XLA'
37693: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
37694: ,p_token_1 => 'LINE_NUMBER'
37695: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
37696: ,p_token_2 => 'LINE_TYPE_NAME'
37697: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
37698: l_component_type
37699: ,l_component_code
37727: --
37728: --
37729: ------------------------------------------------------------------------------------------------
37730: -- 4219869 Business Flow
37731: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37732: -- Prior Entry. Currently, the following code is always generated.
37733: ------------------------------------------------------------------------------------------------
37734: XLA_AE_LINES_PKG.ValidateCurrentLine;
37735:
37730: -- 4219869 Business Flow
37731: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37732: -- Prior Entry. Currently, the following code is always generated.
37733: ------------------------------------------------------------------------------------------------
37734: XLA_AE_LINES_PKG.ValidateCurrentLine;
37735:
37736: ------------------------------------------------------------------------------------
37737: -- 4219869 Business Flow
37738: -- Populated credit and debit amounts -- Need to generate this within IF
37736: ------------------------------------------------------------------------------------
37737: -- 4219869 Business Flow
37738: -- Populated credit and debit amounts -- Need to generate this within IF
37739: ------------------------------------------------------------------------------------
37740: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37741:
37742: ----------------------------------------------------------------------------------
37743: -- 4219869 Business Flow
37744: -- Update journal entry status -- Need to generate this within IF
37768: -- To allow MPA report to determine if it should generate report process
37769: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37770: ------------------------------------------------------------------------------------------
37771:
37772: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37773: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37774: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37775: -- call ADRs
37776: -- Bug 4922099
37769: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37770: ------------------------------------------------------------------------------------------
37771:
37772: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37773: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37774: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37775: -- call ADRs
37776: -- Bug 4922099
37777: --
37793: , x_value_type_code => l_adr_value_type_code
37794: , p_side => 'NA'
37795: );
37796:
37797: xla_ae_lines_pkg.set_ccid(
37798: p_code_combination_id => l_ccid
37799: , p_value_type_code => l_adr_value_type_code
37800: , p_transaction_coa_id => l_adr_transaction_coa_id
37801: , p_accounting_coa_id => l_adr_accounting_coa_id
37816:
37817: --
37818: -- Update the line information that should be overwritten
37819: --
37820: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37821: p_header_num => 1);
37822: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37823:
37824: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37818: -- Update the line information that should be overwritten
37819: --
37820: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37821: p_header_num => 1);
37822: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37823:
37824: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37825:
37826: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37820: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37821: p_header_num => 1);
37822: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37823:
37824: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37825:
37826: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37827: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37828: END IF;
37823:
37824: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37825:
37826: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37827: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37828: END IF;
37829:
37830: --
37831: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37830: --
37831: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37832: --
37833: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
37834: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
37835: ELSE
37836: ---------------------------------------------------------------------------------------------------
37837: -- 4262811a Switch Sign
37838: ---------------------------------------------------------------------------------------------------
37835: ELSE
37836: ---------------------------------------------------------------------------------------------------
37837: -- 4262811a Switch Sign
37838: ---------------------------------------------------------------------------------------------------
37839: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37840: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37841: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37842: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37843: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37836: ---------------------------------------------------------------------------------------------------
37837: -- 4262811a Switch Sign
37838: ---------------------------------------------------------------------------------------------------
37839: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37840: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37841: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37842: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37843: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37844: -- 5132302
37837: -- 4262811a Switch Sign
37838: ---------------------------------------------------------------------------------------------------
37839: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37840: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37841: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37842: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37843: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37844: -- 5132302
37845: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37838: ---------------------------------------------------------------------------------------------------
37839: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37840: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37841: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37842: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37843: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37844: -- 5132302
37845: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37846: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37839: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37840: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37841: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37842: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37843: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37844: -- 5132302
37845: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37846: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37847:
37841: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37842: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37843: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37844: -- 5132302
37845: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37846: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37847:
37848: END IF;
37849:
37842: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37843: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37844: -- 5132302
37845: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37846: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37847:
37848: END IF;
37849:
37850: -- 4955764
37847:
37848: END IF;
37849:
37850: -- 4955764
37851: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37852: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37853:
37854:
37855: XLA_AE_LINES_PKG.ValidateCurrentLine;
37851: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37852: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37853:
37854:
37855: XLA_AE_LINES_PKG.ValidateCurrentLine;
37856: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37857:
37858: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37859: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37852: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37853:
37854:
37855: XLA_AE_LINES_PKG.ValidateCurrentLine;
37856: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37857:
37858: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37859: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37860: ,p_balance_type_code => l_balance_type_code);
37993: --
37994: -- bulk performance
37995: --
37996: l_balance_type_code VARCHAR2(1);
37997: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
37998: l_log_module VARCHAR2(240);
37999:
38000: --
38001: -- Upgrade strategy
38061: ') = 'REC'
38062: THEN
38063:
38064: --
38065: XLA_AE_LINES_PKG.SetNewLine;
38066:
38067: p_balance_type_code := l_balance_type_code;
38068: -- set the flag so later we will know whether the gain loss line needs to be created
38069:
38073:
38074: --
38075: -- bulk performance
38076: --
38077: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
38078: p_header_num => 0); -- 4262811
38079: --
38080: -- set accounting line options
38081: --
38078: p_header_num => 0); -- 4262811
38079: --
38080: -- set accounting line options
38081: --
38082: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
38083: p_natural_side_code => 'D'
38084: , p_gain_or_loss_flag => 'N'
38085: , p_gl_transfer_mode_code => 'S'
38086: , p_acct_entry_type_code => 'A'
38092: --
38093: --
38094: -- set accounting line type info
38095: --
38096: xla_ae_lines_pkg.SetAcctLineType
38097: (p_component_type => l_component_type
38098: ,p_event_type_code => l_event_type_code
38099: ,p_line_definition_owner_code => l_line_definition_owner_code
38100: ,p_line_definition_code => l_line_definition_code
38106: ,p_event_class_code => l_event_class_code);
38107: --
38108: -- set accounting class
38109: --
38110: xla_ae_lines_pkg.SetAcctClass(
38111: p_accounting_class_code => 'RECEIVABLE'
38112: , p_ae_header_id => l_ae_header_id
38113: );
38114:
38114:
38115: --
38116: -- set rounding class
38117: --
38118: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38119: 'RECEIVABLE';
38120:
38121: --
38122: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38118: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38119: 'RECEIVABLE';
38120:
38121: --
38122: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38123: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38124: --
38125: -- bulk performance
38126: --
38119: 'RECEIVABLE';
38120:
38121: --
38122: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38123: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38124: --
38125: -- bulk performance
38126: --
38127: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38123: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38124: --
38125: -- bulk performance
38126: --
38127: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38128:
38129: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38130: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38131:
38125: -- bulk performance
38126: --
38127: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38128:
38129: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38130: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38131:
38132: -- 4955764
38133: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38129: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38130: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38131:
38132: -- 4955764
38133: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38134: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
38135:
38136: -- 4458381 Public Sector Enh
38137:
38165: l_rec_acct_attrs.array_char_value(11) := p_source_32;
38166: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
38167: l_rec_acct_attrs.array_num_value(12) := p_source_55;
38168:
38169: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38170: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38171:
38172: ---------------------------------------------------------------------------------------------------------------
38173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38166: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
38167: l_rec_acct_attrs.array_num_value(12) := p_source_55;
38168:
38169: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38170: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38171:
38172: ---------------------------------------------------------------------------------------------------------------
38173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38174: ---------------------------------------------------------------------------------------------------------------
38169: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38170: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38171:
38172: ---------------------------------------------------------------------------------------------------------------
38173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38174: ---------------------------------------------------------------------------------------------------------------
38175: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38176:
38177: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38171:
38172: ---------------------------------------------------------------------------------------------------------------
38173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38174: ---------------------------------------------------------------------------------------------------------------
38175: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38176:
38177: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38178: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38179:
38173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38174: ---------------------------------------------------------------------------------------------------------------
38175: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38176:
38177: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38178: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38179:
38180: IF xla_accounting_cache_pkg.GetValueChar
38181: (p_source_code => 'LEDGER_CATEGORY_CODE'
38174: ---------------------------------------------------------------------------------------------------------------
38175: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38176:
38177: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38178: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38179:
38180: IF xla_accounting_cache_pkg.GetValueChar
38181: (p_source_code => 'LEDGER_CATEGORY_CODE'
38182: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
38185: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
38186: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
38187: )
38188: THEN
38189: xla_ae_lines_pkg.BflowUpgEntry
38190: (p_business_method_code => l_bflow_method_code
38191: ,p_business_class_code => l_bflow_class_code
38192: ,p_balance_type => l_balance_type_code);
38193: ELSE
38225: , x_value_type_code => l_adr_value_type_code
38226: , p_side => 'NA'
38227: );
38228:
38229: xla_ae_lines_pkg.set_ccid(
38230: p_code_combination_id => l_ccid
38231: , p_value_type_code => l_adr_value_type_code
38232: , p_transaction_coa_id => l_adr_transaction_coa_id
38233: , p_accounting_coa_id => l_adr_accounting_coa_id
38261: xla_accounting_err_pkg.build_message
38262: (p_appli_s_name => 'XLA'
38263: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
38264: ,p_token_1 => 'LINE_NUMBER'
38265: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
38266: ,p_token_2 => 'LINE_TYPE_NAME'
38267: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
38268: l_component_type
38269: ,l_component_code
38297: --
38298: --
38299: ------------------------------------------------------------------------------------------------
38300: -- 4219869 Business Flow
38301: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38302: -- Prior Entry. Currently, the following code is always generated.
38303: ------------------------------------------------------------------------------------------------
38304: XLA_AE_LINES_PKG.ValidateCurrentLine;
38305:
38300: -- 4219869 Business Flow
38301: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38302: -- Prior Entry. Currently, the following code is always generated.
38303: ------------------------------------------------------------------------------------------------
38304: XLA_AE_LINES_PKG.ValidateCurrentLine;
38305:
38306: ------------------------------------------------------------------------------------
38307: -- 4219869 Business Flow
38308: -- Populated credit and debit amounts -- Need to generate this within IF
38306: ------------------------------------------------------------------------------------
38307: -- 4219869 Business Flow
38308: -- Populated credit and debit amounts -- Need to generate this within IF
38309: ------------------------------------------------------------------------------------
38310: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38311:
38312: ----------------------------------------------------------------------------------
38313: -- 4219869 Business Flow
38314: -- Update journal entry status -- Need to generate this within IF
38338: -- To allow MPA report to determine if it should generate report process
38339: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38340: ------------------------------------------------------------------------------------------
38341:
38342: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38343: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38344: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38345: -- call ADRs
38346: -- Bug 4922099
38339: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38340: ------------------------------------------------------------------------------------------
38341:
38342: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38343: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38344: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38345: -- call ADRs
38346: -- Bug 4922099
38347: --
38363: , x_value_type_code => l_adr_value_type_code
38364: , p_side => 'NA'
38365: );
38366:
38367: xla_ae_lines_pkg.set_ccid(
38368: p_code_combination_id => l_ccid
38369: , p_value_type_code => l_adr_value_type_code
38370: , p_transaction_coa_id => l_adr_transaction_coa_id
38371: , p_accounting_coa_id => l_adr_accounting_coa_id
38386:
38387: --
38388: -- Update the line information that should be overwritten
38389: --
38390: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38391: p_header_num => 1);
38392: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38393:
38394: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38388: -- Update the line information that should be overwritten
38389: --
38390: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38391: p_header_num => 1);
38392: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38393:
38394: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38395:
38396: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38390: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38391: p_header_num => 1);
38392: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38393:
38394: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38395:
38396: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38397: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38398: END IF;
38393:
38394: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38395:
38396: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38397: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38398: END IF;
38399:
38400: --
38401: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38400: --
38401: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38402: --
38403: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
38404: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
38405: ELSE
38406: ---------------------------------------------------------------------------------------------------
38407: -- 4262811a Switch Sign
38408: ---------------------------------------------------------------------------------------------------
38405: ELSE
38406: ---------------------------------------------------------------------------------------------------
38407: -- 4262811a Switch Sign
38408: ---------------------------------------------------------------------------------------------------
38409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38406: ---------------------------------------------------------------------------------------------------
38407: -- 4262811a Switch Sign
38408: ---------------------------------------------------------------------------------------------------
38409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: -- 5132302
38407: -- 4262811a Switch Sign
38408: ---------------------------------------------------------------------------------------------------
38409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: -- 5132302
38415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38408: ---------------------------------------------------------------------------------------------------
38409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: -- 5132302
38415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: -- 5132302
38415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38417:
38411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: -- 5132302
38415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38417:
38418: END IF;
38419:
38412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: -- 5132302
38415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38417:
38418: END IF;
38419:
38420: -- 4955764
38417:
38418: END IF;
38419:
38420: -- 4955764
38421: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38422: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38423:
38424:
38425: XLA_AE_LINES_PKG.ValidateCurrentLine;
38421: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38422: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38423:
38424:
38425: XLA_AE_LINES_PKG.ValidateCurrentLine;
38426: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38427:
38428: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38429: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38422: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38423:
38424:
38425: XLA_AE_LINES_PKG.ValidateCurrentLine;
38426: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38427:
38428: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38429: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38430: ,p_balance_type_code => l_balance_type_code);
38563: --
38564: -- bulk performance
38565: --
38566: l_balance_type_code VARCHAR2(1);
38567: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
38568: l_log_module VARCHAR2(240);
38569:
38570: --
38571: -- Upgrade strategy
38631: ') = 'FREIGHT'
38632: THEN
38633:
38634: --
38635: XLA_AE_LINES_PKG.SetNewLine;
38636:
38637: p_balance_type_code := l_balance_type_code;
38638: -- set the flag so later we will know whether the gain loss line needs to be created
38639:
38643:
38644: --
38645: -- bulk performance
38646: --
38647: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
38648: p_header_num => 0); -- 4262811
38649: --
38650: -- set accounting line options
38651: --
38648: p_header_num => 0); -- 4262811
38649: --
38650: -- set accounting line options
38651: --
38652: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
38653: p_natural_side_code => 'C'
38654: , p_gain_or_loss_flag => 'N'
38655: , p_gl_transfer_mode_code => 'S'
38656: , p_acct_entry_type_code => 'A'
38662: --
38663: --
38664: -- set accounting line type info
38665: --
38666: xla_ae_lines_pkg.SetAcctLineType
38667: (p_component_type => l_component_type
38668: ,p_event_type_code => l_event_type_code
38669: ,p_line_definition_owner_code => l_line_definition_owner_code
38670: ,p_line_definition_code => l_line_definition_code
38676: ,p_event_class_code => l_event_class_code);
38677: --
38678: -- set accounting class
38679: --
38680: xla_ae_lines_pkg.SetAcctClass(
38681: p_accounting_class_code => 'FREIGHT'
38682: , p_ae_header_id => l_ae_header_id
38683: );
38684:
38684:
38685: --
38686: -- set rounding class
38687: --
38688: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38689: 'RECEIVABLE';
38690:
38691: --
38692: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38688: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38689: 'RECEIVABLE';
38690:
38691: --
38692: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38693: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38694: --
38695: -- bulk performance
38696: --
38689: 'RECEIVABLE';
38690:
38691: --
38692: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38693: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38694: --
38695: -- bulk performance
38696: --
38697: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38693: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38694: --
38695: -- bulk performance
38696: --
38697: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38698:
38699: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38700: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38701:
38695: -- bulk performance
38696: --
38697: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38698:
38699: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38700: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38701:
38702: -- 4955764
38703: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38699: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38700: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38701:
38702: -- 4955764
38703: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38704: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
38705:
38706: -- 4458381 Public Sector Enh
38707:
38735: l_rec_acct_attrs.array_char_value(11) := p_source_32;
38736: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
38737: l_rec_acct_attrs.array_num_value(12) := p_source_55;
38738:
38739: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38740: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38741:
38742: ---------------------------------------------------------------------------------------------------------------
38743: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38736: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
38737: l_rec_acct_attrs.array_num_value(12) := p_source_55;
38738:
38739: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38740: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38741:
38742: ---------------------------------------------------------------------------------------------------------------
38743: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38744: ---------------------------------------------------------------------------------------------------------------
38739: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38740: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38741:
38742: ---------------------------------------------------------------------------------------------------------------
38743: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38744: ---------------------------------------------------------------------------------------------------------------
38745: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38746:
38747: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38741:
38742: ---------------------------------------------------------------------------------------------------------------
38743: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38744: ---------------------------------------------------------------------------------------------------------------
38745: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38746:
38747: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38748: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38749:
38743: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38744: ---------------------------------------------------------------------------------------------------------------
38745: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38746:
38747: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38748: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38749:
38750: IF xla_accounting_cache_pkg.GetValueChar
38751: (p_source_code => 'LEDGER_CATEGORY_CODE'
38744: ---------------------------------------------------------------------------------------------------------------
38745: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38746:
38747: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38748: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38749:
38750: IF xla_accounting_cache_pkg.GetValueChar
38751: (p_source_code => 'LEDGER_CATEGORY_CODE'
38752: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
38755: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
38756: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
38757: )
38758: THEN
38759: xla_ae_lines_pkg.BflowUpgEntry
38760: (p_business_method_code => l_bflow_method_code
38761: ,p_business_class_code => l_bflow_class_code
38762: ,p_balance_type => l_balance_type_code);
38763: ELSE
38795: , x_value_type_code => l_adr_value_type_code
38796: , p_side => 'NA'
38797: );
38798:
38799: xla_ae_lines_pkg.set_ccid(
38800: p_code_combination_id => l_ccid
38801: , p_value_type_code => l_adr_value_type_code
38802: , p_transaction_coa_id => l_adr_transaction_coa_id
38803: , p_accounting_coa_id => l_adr_accounting_coa_id
38831: xla_accounting_err_pkg.build_message
38832: (p_appli_s_name => 'XLA'
38833: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
38834: ,p_token_1 => 'LINE_NUMBER'
38835: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
38836: ,p_token_2 => 'LINE_TYPE_NAME'
38837: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
38838: l_component_type
38839: ,l_component_code
38867: --
38868: --
38869: ------------------------------------------------------------------------------------------------
38870: -- 4219869 Business Flow
38871: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38872: -- Prior Entry. Currently, the following code is always generated.
38873: ------------------------------------------------------------------------------------------------
38874: XLA_AE_LINES_PKG.ValidateCurrentLine;
38875:
38870: -- 4219869 Business Flow
38871: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38872: -- Prior Entry. Currently, the following code is always generated.
38873: ------------------------------------------------------------------------------------------------
38874: XLA_AE_LINES_PKG.ValidateCurrentLine;
38875:
38876: ------------------------------------------------------------------------------------
38877: -- 4219869 Business Flow
38878: -- Populated credit and debit amounts -- Need to generate this within IF
38876: ------------------------------------------------------------------------------------
38877: -- 4219869 Business Flow
38878: -- Populated credit and debit amounts -- Need to generate this within IF
38879: ------------------------------------------------------------------------------------
38880: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38881:
38882: ----------------------------------------------------------------------------------
38883: -- 4219869 Business Flow
38884: -- Update journal entry status -- Need to generate this within IF
38908: -- To allow MPA report to determine if it should generate report process
38909: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38910: ------------------------------------------------------------------------------------------
38911:
38912: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38913: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38914: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38915: -- call ADRs
38916: -- Bug 4922099
38909: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38910: ------------------------------------------------------------------------------------------
38911:
38912: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38913: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38914: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38915: -- call ADRs
38916: -- Bug 4922099
38917: --
38933: , x_value_type_code => l_adr_value_type_code
38934: , p_side => 'NA'
38935: );
38936:
38937: xla_ae_lines_pkg.set_ccid(
38938: p_code_combination_id => l_ccid
38939: , p_value_type_code => l_adr_value_type_code
38940: , p_transaction_coa_id => l_adr_transaction_coa_id
38941: , p_accounting_coa_id => l_adr_accounting_coa_id
38956:
38957: --
38958: -- Update the line information that should be overwritten
38959: --
38960: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38961: p_header_num => 1);
38962: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38963:
38964: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38958: -- Update the line information that should be overwritten
38959: --
38960: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38961: p_header_num => 1);
38962: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38963:
38964: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38965:
38966: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38960: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38961: p_header_num => 1);
38962: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38963:
38964: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38965:
38966: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38967: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38968: END IF;
38963:
38964: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38965:
38966: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38967: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38968: END IF;
38969:
38970: --
38971: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38970: --
38971: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38972: --
38973: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
38974: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
38975: ELSE
38976: ---------------------------------------------------------------------------------------------------
38977: -- 4262811a Switch Sign
38978: ---------------------------------------------------------------------------------------------------
38975: ELSE
38976: ---------------------------------------------------------------------------------------------------
38977: -- 4262811a Switch Sign
38978: ---------------------------------------------------------------------------------------------------
38979: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38980: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38982: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38976: ---------------------------------------------------------------------------------------------------
38977: -- 4262811a Switch Sign
38978: ---------------------------------------------------------------------------------------------------
38979: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38980: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38982: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38984: -- 5132302
38977: -- 4262811a Switch Sign
38978: ---------------------------------------------------------------------------------------------------
38979: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38980: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38982: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38984: -- 5132302
38985: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38978: ---------------------------------------------------------------------------------------------------
38979: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38980: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38982: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38984: -- 5132302
38985: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38986: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38979: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38980: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38982: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38984: -- 5132302
38985: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38986: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38987:
38981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38982: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38984: -- 5132302
38985: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38986: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38987:
38988: END IF;
38989:
38982: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38984: -- 5132302
38985: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38986: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38987:
38988: END IF;
38989:
38990: -- 4955764
38987:
38988: END IF;
38989:
38990: -- 4955764
38991: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38992: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38993:
38994:
38995: XLA_AE_LINES_PKG.ValidateCurrentLine;
38991: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38992: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38993:
38994:
38995: XLA_AE_LINES_PKG.ValidateCurrentLine;
38996: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38997:
38998: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38999: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38992: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38993:
38994:
38995: XLA_AE_LINES_PKG.ValidateCurrentLine;
38996: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38997:
38998: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38999: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39000: ,p_balance_type_code => l_balance_type_code);
39135: --
39136: -- bulk performance
39137: --
39138: l_balance_type_code VARCHAR2(1);
39139: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
39140: l_log_module VARCHAR2(240);
39141:
39142: --
39143: -- Upgrade strategy
39204: p_source_66 IS NULL
39205: THEN
39206:
39207: --
39208: XLA_AE_LINES_PKG.SetNewLine;
39209:
39210: p_balance_type_code := l_balance_type_code;
39211: -- set the flag so later we will know whether the gain loss line needs to be created
39212:
39216:
39217: --
39218: -- bulk performance
39219: --
39220: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
39221: p_header_num => 0); -- 4262811
39222: --
39223: -- set accounting line options
39224: --
39221: p_header_num => 0); -- 4262811
39222: --
39223: -- set accounting line options
39224: --
39225: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
39226: p_natural_side_code => 'C'
39227: , p_gain_or_loss_flag => 'N'
39228: , p_gl_transfer_mode_code => 'S'
39229: , p_acct_entry_type_code => 'A'
39235: --
39236: --
39237: -- set accounting line type info
39238: --
39239: xla_ae_lines_pkg.SetAcctLineType
39240: (p_component_type => l_component_type
39241: ,p_event_type_code => l_event_type_code
39242: ,p_line_definition_owner_code => l_line_definition_owner_code
39243: ,p_line_definition_code => l_line_definition_code
39249: ,p_event_class_code => l_event_class_code);
39250: --
39251: -- set accounting class
39252: --
39253: xla_ae_lines_pkg.SetAcctClass(
39254: p_accounting_class_code => 'REVENUE'
39255: , p_ae_header_id => l_ae_header_id
39256: );
39257:
39257:
39258: --
39259: -- set rounding class
39260: --
39261: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39262: 'RECEIVABLE';
39263:
39264: --
39265: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39261: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39262: 'RECEIVABLE';
39263:
39264: --
39265: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39266: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39267: --
39268: -- bulk performance
39269: --
39262: 'RECEIVABLE';
39263:
39264: --
39265: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39266: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39267: --
39268: -- bulk performance
39269: --
39270: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39266: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39267: --
39268: -- bulk performance
39269: --
39270: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39271:
39272: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39273: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39274:
39268: -- bulk performance
39269: --
39270: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39271:
39272: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39273: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39274:
39275: -- 4955764
39276: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39272: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39273: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39274:
39275: -- 4955764
39276: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39277: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
39278:
39279: -- 4458381 Public Sector Enh
39280:
39308: l_rec_acct_attrs.array_char_value(11) := p_source_32;
39309: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
39310: l_rec_acct_attrs.array_num_value(12) := p_source_55;
39311:
39312: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39313: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39314:
39315: ---------------------------------------------------------------------------------------------------------------
39316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39309: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
39310: l_rec_acct_attrs.array_num_value(12) := p_source_55;
39311:
39312: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39313: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39314:
39315: ---------------------------------------------------------------------------------------------------------------
39316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39317: ---------------------------------------------------------------------------------------------------------------
39312: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39313: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39314:
39315: ---------------------------------------------------------------------------------------------------------------
39316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39317: ---------------------------------------------------------------------------------------------------------------
39318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39319:
39320: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39314:
39315: ---------------------------------------------------------------------------------------------------------------
39316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39317: ---------------------------------------------------------------------------------------------------------------
39318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39319:
39320: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39321: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39322:
39316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39317: ---------------------------------------------------------------------------------------------------------------
39318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39319:
39320: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39321: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39322:
39323: IF xla_accounting_cache_pkg.GetValueChar
39324: (p_source_code => 'LEDGER_CATEGORY_CODE'
39317: ---------------------------------------------------------------------------------------------------------------
39318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39319:
39320: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39321: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39322:
39323: IF xla_accounting_cache_pkg.GetValueChar
39324: (p_source_code => 'LEDGER_CATEGORY_CODE'
39325: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
39328: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
39329: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
39330: )
39331: THEN
39332: xla_ae_lines_pkg.BflowUpgEntry
39333: (p_business_method_code => l_bflow_method_code
39334: ,p_business_class_code => l_bflow_class_code
39335: ,p_balance_type => l_balance_type_code);
39336: ELSE
39368: , x_value_type_code => l_adr_value_type_code
39369: , p_side => 'NA'
39370: );
39371:
39372: xla_ae_lines_pkg.set_ccid(
39373: p_code_combination_id => l_ccid
39374: , p_value_type_code => l_adr_value_type_code
39375: , p_transaction_coa_id => l_adr_transaction_coa_id
39376: , p_accounting_coa_id => l_adr_accounting_coa_id
39404: xla_accounting_err_pkg.build_message
39405: (p_appli_s_name => 'XLA'
39406: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
39407: ,p_token_1 => 'LINE_NUMBER'
39408: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
39409: ,p_token_2 => 'LINE_TYPE_NAME'
39410: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
39411: l_component_type
39412: ,l_component_code
39440: --
39441: --
39442: ------------------------------------------------------------------------------------------------
39443: -- 4219869 Business Flow
39444: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39445: -- Prior Entry. Currently, the following code is always generated.
39446: ------------------------------------------------------------------------------------------------
39447: XLA_AE_LINES_PKG.ValidateCurrentLine;
39448:
39443: -- 4219869 Business Flow
39444: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39445: -- Prior Entry. Currently, the following code is always generated.
39446: ------------------------------------------------------------------------------------------------
39447: XLA_AE_LINES_PKG.ValidateCurrentLine;
39448:
39449: ------------------------------------------------------------------------------------
39450: -- 4219869 Business Flow
39451: -- Populated credit and debit amounts -- Need to generate this within IF
39449: ------------------------------------------------------------------------------------
39450: -- 4219869 Business Flow
39451: -- Populated credit and debit amounts -- Need to generate this within IF
39452: ------------------------------------------------------------------------------------
39453: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39454:
39455: ----------------------------------------------------------------------------------
39456: -- 4219869 Business Flow
39457: -- Update journal entry status -- Need to generate this within IF
39481: -- To allow MPA report to determine if it should generate report process
39482: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39483: ------------------------------------------------------------------------------------------
39484:
39485: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39486: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39487: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39488: -- call ADRs
39489: -- Bug 4922099
39482: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39483: ------------------------------------------------------------------------------------------
39484:
39485: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39486: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39487: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39488: -- call ADRs
39489: -- Bug 4922099
39490: --
39506: , x_value_type_code => l_adr_value_type_code
39507: , p_side => 'NA'
39508: );
39509:
39510: xla_ae_lines_pkg.set_ccid(
39511: p_code_combination_id => l_ccid
39512: , p_value_type_code => l_adr_value_type_code
39513: , p_transaction_coa_id => l_adr_transaction_coa_id
39514: , p_accounting_coa_id => l_adr_accounting_coa_id
39529:
39530: --
39531: -- Update the line information that should be overwritten
39532: --
39533: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39534: p_header_num => 1);
39535: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39536:
39537: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39531: -- Update the line information that should be overwritten
39532: --
39533: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39534: p_header_num => 1);
39535: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39536:
39537: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39538:
39539: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39533: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39534: p_header_num => 1);
39535: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39536:
39537: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39538:
39539: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39540: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39541: END IF;
39536:
39537: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39538:
39539: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39540: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39541: END IF;
39542:
39543: --
39544: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39543: --
39544: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39545: --
39546: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
39547: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
39548: ELSE
39549: ---------------------------------------------------------------------------------------------------
39550: -- 4262811a Switch Sign
39551: ---------------------------------------------------------------------------------------------------
39548: ELSE
39549: ---------------------------------------------------------------------------------------------------
39550: -- 4262811a Switch Sign
39551: ---------------------------------------------------------------------------------------------------
39552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39549: ---------------------------------------------------------------------------------------------------
39550: -- 4262811a Switch Sign
39551: ---------------------------------------------------------------------------------------------------
39552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39557: -- 5132302
39550: -- 4262811a Switch Sign
39551: ---------------------------------------------------------------------------------------------------
39552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39557: -- 5132302
39558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39551: ---------------------------------------------------------------------------------------------------
39552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39557: -- 5132302
39558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39559: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39557: -- 5132302
39558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39559: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39560:
39554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39557: -- 5132302
39558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39559: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39560:
39561: END IF;
39562:
39555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39557: -- 5132302
39558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39559: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39560:
39561: END IF;
39562:
39563: -- 4955764
39560:
39561: END IF;
39562:
39563: -- 4955764
39564: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39565: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39566:
39567:
39568: XLA_AE_LINES_PKG.ValidateCurrentLine;
39564: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39565: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39566:
39567:
39568: XLA_AE_LINES_PKG.ValidateCurrentLine;
39569: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39570:
39571: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39572: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39565: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39566:
39567:
39568: XLA_AE_LINES_PKG.ValidateCurrentLine;
39569: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39570:
39571: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39572: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39573: ,p_balance_type_code => l_balance_type_code);
39708: --
39709: -- bulk performance
39710: --
39711: l_balance_type_code VARCHAR2(1);
39712: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
39713: l_log_module VARCHAR2(240);
39714:
39715: --
39716: -- Upgrade strategy
39778: ') = 'Y'
39779: THEN
39780:
39781: --
39782: XLA_AE_LINES_PKG.SetNewLine;
39783:
39784: p_balance_type_code := l_balance_type_code;
39785: -- set the flag so later we will know whether the gain loss line needs to be created
39786:
39790:
39791: --
39792: -- bulk performance
39793: --
39794: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
39795: p_header_num => 0); -- 4262811
39796: --
39797: -- set accounting line options
39798: --
39795: p_header_num => 0); -- 4262811
39796: --
39797: -- set accounting line options
39798: --
39799: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
39800: p_natural_side_code => 'C'
39801: , p_gain_or_loss_flag => 'N'
39802: , p_gl_transfer_mode_code => 'S'
39803: , p_acct_entry_type_code => 'A'
39809: --
39810: --
39811: -- set accounting line type info
39812: --
39813: xla_ae_lines_pkg.SetAcctLineType
39814: (p_component_type => l_component_type
39815: ,p_event_type_code => l_event_type_code
39816: ,p_line_definition_owner_code => l_line_definition_owner_code
39817: ,p_line_definition_code => l_line_definition_code
39823: ,p_event_class_code => l_event_class_code);
39824: --
39825: -- set accounting class
39826: --
39827: xla_ae_lines_pkg.SetAcctClass(
39828: p_accounting_class_code => 'REVENUE'
39829: , p_ae_header_id => l_ae_header_id
39830: );
39831:
39831:
39832: --
39833: -- set rounding class
39834: --
39835: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39836: 'RECEIVABLE';
39837:
39838: --
39839: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39835: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39836: 'RECEIVABLE';
39837:
39838: --
39839: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39840: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39841: --
39842: -- bulk performance
39843: --
39836: 'RECEIVABLE';
39837:
39838: --
39839: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39840: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39841: --
39842: -- bulk performance
39843: --
39844: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39840: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39841: --
39842: -- bulk performance
39843: --
39844: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39845:
39846: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39847: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39848:
39842: -- bulk performance
39843: --
39844: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39845:
39846: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39847: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39848:
39849: -- 4955764
39850: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39846: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39847: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39848:
39849: -- 4955764
39850: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39851: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
39852:
39853: -- 4458381 Public Sector Enh
39854:
39882: l_rec_acct_attrs.array_char_value(11) := p_source_32;
39883: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
39884: l_rec_acct_attrs.array_num_value(12) := p_source_55;
39885:
39886: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39887: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39888:
39889: ---------------------------------------------------------------------------------------------------------------
39890: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39883: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
39884: l_rec_acct_attrs.array_num_value(12) := p_source_55;
39885:
39886: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39887: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39888:
39889: ---------------------------------------------------------------------------------------------------------------
39890: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39891: ---------------------------------------------------------------------------------------------------------------
39886: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39887: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39888:
39889: ---------------------------------------------------------------------------------------------------------------
39890: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39891: ---------------------------------------------------------------------------------------------------------------
39892: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39893:
39894: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39888:
39889: ---------------------------------------------------------------------------------------------------------------
39890: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39891: ---------------------------------------------------------------------------------------------------------------
39892: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39893:
39894: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39895: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39896:
39890: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39891: ---------------------------------------------------------------------------------------------------------------
39892: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39893:
39894: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39895: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39896:
39897: IF xla_accounting_cache_pkg.GetValueChar
39898: (p_source_code => 'LEDGER_CATEGORY_CODE'
39891: ---------------------------------------------------------------------------------------------------------------
39892: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39893:
39894: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39895: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39896:
39897: IF xla_accounting_cache_pkg.GetValueChar
39898: (p_source_code => 'LEDGER_CATEGORY_CODE'
39899: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
39902: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
39903: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
39904: )
39905: THEN
39906: xla_ae_lines_pkg.BflowUpgEntry
39907: (p_business_method_code => l_bflow_method_code
39908: ,p_business_class_code => l_bflow_class_code
39909: ,p_balance_type => l_balance_type_code);
39910: ELSE
39942: , x_value_type_code => l_adr_value_type_code
39943: , p_side => 'NA'
39944: );
39945:
39946: xla_ae_lines_pkg.set_ccid(
39947: p_code_combination_id => l_ccid
39948: , p_value_type_code => l_adr_value_type_code
39949: , p_transaction_coa_id => l_adr_transaction_coa_id
39950: , p_accounting_coa_id => l_adr_accounting_coa_id
39978: xla_accounting_err_pkg.build_message
39979: (p_appli_s_name => 'XLA'
39980: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
39981: ,p_token_1 => 'LINE_NUMBER'
39982: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
39983: ,p_token_2 => 'LINE_TYPE_NAME'
39984: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
39985: l_component_type
39986: ,l_component_code
40014: --
40015: --
40016: ------------------------------------------------------------------------------------------------
40017: -- 4219869 Business Flow
40018: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40019: -- Prior Entry. Currently, the following code is always generated.
40020: ------------------------------------------------------------------------------------------------
40021: XLA_AE_LINES_PKG.ValidateCurrentLine;
40022:
40017: -- 4219869 Business Flow
40018: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40019: -- Prior Entry. Currently, the following code is always generated.
40020: ------------------------------------------------------------------------------------------------
40021: XLA_AE_LINES_PKG.ValidateCurrentLine;
40022:
40023: ------------------------------------------------------------------------------------
40024: -- 4219869 Business Flow
40025: -- Populated credit and debit amounts -- Need to generate this within IF
40023: ------------------------------------------------------------------------------------
40024: -- 4219869 Business Flow
40025: -- Populated credit and debit amounts -- Need to generate this within IF
40026: ------------------------------------------------------------------------------------
40027: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40028:
40029: ----------------------------------------------------------------------------------
40030: -- 4219869 Business Flow
40031: -- Update journal entry status -- Need to generate this within IF
40055: -- To allow MPA report to determine if it should generate report process
40056: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40057: ------------------------------------------------------------------------------------------
40058:
40059: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40060: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40061: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40062: -- call ADRs
40063: -- Bug 4922099
40056: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40057: ------------------------------------------------------------------------------------------
40058:
40059: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40060: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40061: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40062: -- call ADRs
40063: -- Bug 4922099
40064: --
40080: , x_value_type_code => l_adr_value_type_code
40081: , p_side => 'NA'
40082: );
40083:
40084: xla_ae_lines_pkg.set_ccid(
40085: p_code_combination_id => l_ccid
40086: , p_value_type_code => l_adr_value_type_code
40087: , p_transaction_coa_id => l_adr_transaction_coa_id
40088: , p_accounting_coa_id => l_adr_accounting_coa_id
40103:
40104: --
40105: -- Update the line information that should be overwritten
40106: --
40107: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40108: p_header_num => 1);
40109: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40110:
40111: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40105: -- Update the line information that should be overwritten
40106: --
40107: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40108: p_header_num => 1);
40109: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40110:
40111: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40112:
40113: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40107: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40108: p_header_num => 1);
40109: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40110:
40111: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40112:
40113: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40114: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40115: END IF;
40110:
40111: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40112:
40113: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40114: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40115: END IF;
40116:
40117: --
40118: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40117: --
40118: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40119: --
40120: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
40121: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
40122: ELSE
40123: ---------------------------------------------------------------------------------------------------
40124: -- 4262811a Switch Sign
40125: ---------------------------------------------------------------------------------------------------
40122: ELSE
40123: ---------------------------------------------------------------------------------------------------
40124: -- 4262811a Switch Sign
40125: ---------------------------------------------------------------------------------------------------
40126: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40128: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40130: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40123: ---------------------------------------------------------------------------------------------------
40124: -- 4262811a Switch Sign
40125: ---------------------------------------------------------------------------------------------------
40126: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40128: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40130: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40131: -- 5132302
40124: -- 4262811a Switch Sign
40125: ---------------------------------------------------------------------------------------------------
40126: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40128: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40130: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40131: -- 5132302
40132: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40125: ---------------------------------------------------------------------------------------------------
40126: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40128: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40130: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40131: -- 5132302
40132: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40133: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40126: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40127: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40128: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40130: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40131: -- 5132302
40132: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40133: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40134:
40128: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40130: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40131: -- 5132302
40132: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40133: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40134:
40135: END IF;
40136:
40129: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40130: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40131: -- 5132302
40132: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40133: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40134:
40135: END IF;
40136:
40137: -- 4955764
40134:
40135: END IF;
40136:
40137: -- 4955764
40138: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40139: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40140:
40141:
40142: XLA_AE_LINES_PKG.ValidateCurrentLine;
40138: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40139: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40140:
40141:
40142: XLA_AE_LINES_PKG.ValidateCurrentLine;
40143: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40144:
40145: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40146: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40139: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40140:
40141:
40142: XLA_AE_LINES_PKG.ValidateCurrentLine;
40143: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40144:
40145: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40146: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40147: ,p_balance_type_code => l_balance_type_code);
40280: --
40281: -- bulk performance
40282: --
40283: l_balance_type_code VARCHAR2(1);
40284: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
40285: l_log_module VARCHAR2(240);
40286:
40287: --
40288: -- Upgrade strategy
40348: ') = 'ROUND'
40349: THEN
40350:
40351: --
40352: XLA_AE_LINES_PKG.SetNewLine;
40353:
40354: p_balance_type_code := l_balance_type_code;
40355: -- set the flag so later we will know whether the gain loss line needs to be created
40356:
40360:
40361: --
40362: -- bulk performance
40363: --
40364: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
40365: p_header_num => 0); -- 4262811
40366: --
40367: -- set accounting line options
40368: --
40365: p_header_num => 0); -- 4262811
40366: --
40367: -- set accounting line options
40368: --
40369: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
40370: p_natural_side_code => 'C'
40371: , p_gain_or_loss_flag => 'N'
40372: , p_gl_transfer_mode_code => 'S'
40373: , p_acct_entry_type_code => 'A'
40379: --
40380: --
40381: -- set accounting line type info
40382: --
40383: xla_ae_lines_pkg.SetAcctLineType
40384: (p_component_type => l_component_type
40385: ,p_event_type_code => l_event_type_code
40386: ,p_line_definition_owner_code => l_line_definition_owner_code
40387: ,p_line_definition_code => l_line_definition_code
40393: ,p_event_class_code => l_event_class_code);
40394: --
40395: -- set accounting class
40396: --
40397: xla_ae_lines_pkg.SetAcctClass(
40398: p_accounting_class_code => 'ROUNDING'
40399: , p_ae_header_id => l_ae_header_id
40400: );
40401:
40401:
40402: --
40403: -- set rounding class
40404: --
40405: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40406: 'RECEIVABLE';
40407:
40408: --
40409: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40405: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40406: 'RECEIVABLE';
40407:
40408: --
40409: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40410: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40411: --
40412: -- bulk performance
40413: --
40406: 'RECEIVABLE';
40407:
40408: --
40409: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40410: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40411: --
40412: -- bulk performance
40413: --
40414: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40410: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40411: --
40412: -- bulk performance
40413: --
40414: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40415:
40416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40417: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40418:
40412: -- bulk performance
40413: --
40414: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40415:
40416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40417: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40418:
40419: -- 4955764
40420: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40417: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40418:
40419: -- 4955764
40420: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40421: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
40422:
40423: -- 4458381 Public Sector Enh
40424:
40452: l_rec_acct_attrs.array_char_value(11) := p_source_32;
40453: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
40454: l_rec_acct_attrs.array_num_value(12) := p_source_55;
40455:
40456: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40457: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40458:
40459: ---------------------------------------------------------------------------------------------------------------
40460: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40453: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
40454: l_rec_acct_attrs.array_num_value(12) := p_source_55;
40455:
40456: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40457: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40458:
40459: ---------------------------------------------------------------------------------------------------------------
40460: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40461: ---------------------------------------------------------------------------------------------------------------
40456: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40457: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40458:
40459: ---------------------------------------------------------------------------------------------------------------
40460: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40461: ---------------------------------------------------------------------------------------------------------------
40462: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40463:
40464: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40458:
40459: ---------------------------------------------------------------------------------------------------------------
40460: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40461: ---------------------------------------------------------------------------------------------------------------
40462: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40463:
40464: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40465: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40466:
40460: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40461: ---------------------------------------------------------------------------------------------------------------
40462: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40463:
40464: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40465: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40466:
40467: IF xla_accounting_cache_pkg.GetValueChar
40468: (p_source_code => 'LEDGER_CATEGORY_CODE'
40461: ---------------------------------------------------------------------------------------------------------------
40462: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40463:
40464: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40465: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40466:
40467: IF xla_accounting_cache_pkg.GetValueChar
40468: (p_source_code => 'LEDGER_CATEGORY_CODE'
40469: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
40472: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
40473: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
40474: )
40475: THEN
40476: xla_ae_lines_pkg.BflowUpgEntry
40477: (p_business_method_code => l_bflow_method_code
40478: ,p_business_class_code => l_bflow_class_code
40479: ,p_balance_type => l_balance_type_code);
40480: ELSE
40512: , x_value_type_code => l_adr_value_type_code
40513: , p_side => 'NA'
40514: );
40515:
40516: xla_ae_lines_pkg.set_ccid(
40517: p_code_combination_id => l_ccid
40518: , p_value_type_code => l_adr_value_type_code
40519: , p_transaction_coa_id => l_adr_transaction_coa_id
40520: , p_accounting_coa_id => l_adr_accounting_coa_id
40548: xla_accounting_err_pkg.build_message
40549: (p_appli_s_name => 'XLA'
40550: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
40551: ,p_token_1 => 'LINE_NUMBER'
40552: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
40553: ,p_token_2 => 'LINE_TYPE_NAME'
40554: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
40555: l_component_type
40556: ,l_component_code
40584: --
40585: --
40586: ------------------------------------------------------------------------------------------------
40587: -- 4219869 Business Flow
40588: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40589: -- Prior Entry. Currently, the following code is always generated.
40590: ------------------------------------------------------------------------------------------------
40591: XLA_AE_LINES_PKG.ValidateCurrentLine;
40592:
40587: -- 4219869 Business Flow
40588: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40589: -- Prior Entry. Currently, the following code is always generated.
40590: ------------------------------------------------------------------------------------------------
40591: XLA_AE_LINES_PKG.ValidateCurrentLine;
40592:
40593: ------------------------------------------------------------------------------------
40594: -- 4219869 Business Flow
40595: -- Populated credit and debit amounts -- Need to generate this within IF
40593: ------------------------------------------------------------------------------------
40594: -- 4219869 Business Flow
40595: -- Populated credit and debit amounts -- Need to generate this within IF
40596: ------------------------------------------------------------------------------------
40597: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40598:
40599: ----------------------------------------------------------------------------------
40600: -- 4219869 Business Flow
40601: -- Update journal entry status -- Need to generate this within IF
40625: -- To allow MPA report to determine if it should generate report process
40626: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40627: ------------------------------------------------------------------------------------------
40628:
40629: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40630: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40631: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40632: -- call ADRs
40633: -- Bug 4922099
40626: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40627: ------------------------------------------------------------------------------------------
40628:
40629: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40630: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40631: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40632: -- call ADRs
40633: -- Bug 4922099
40634: --
40650: , x_value_type_code => l_adr_value_type_code
40651: , p_side => 'NA'
40652: );
40653:
40654: xla_ae_lines_pkg.set_ccid(
40655: p_code_combination_id => l_ccid
40656: , p_value_type_code => l_adr_value_type_code
40657: , p_transaction_coa_id => l_adr_transaction_coa_id
40658: , p_accounting_coa_id => l_adr_accounting_coa_id
40673:
40674: --
40675: -- Update the line information that should be overwritten
40676: --
40677: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40678: p_header_num => 1);
40679: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40680:
40681: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40675: -- Update the line information that should be overwritten
40676: --
40677: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40678: p_header_num => 1);
40679: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40680:
40681: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40682:
40683: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40677: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40678: p_header_num => 1);
40679: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40680:
40681: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40682:
40683: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40684: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40685: END IF;
40680:
40681: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40682:
40683: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40684: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40685: END IF;
40686:
40687: --
40688: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40687: --
40688: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40689: --
40690: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
40691: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
40692: ELSE
40693: ---------------------------------------------------------------------------------------------------
40694: -- 4262811a Switch Sign
40695: ---------------------------------------------------------------------------------------------------
40692: ELSE
40693: ---------------------------------------------------------------------------------------------------
40694: -- 4262811a Switch Sign
40695: ---------------------------------------------------------------------------------------------------
40696: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40697: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40699: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40693: ---------------------------------------------------------------------------------------------------
40694: -- 4262811a Switch Sign
40695: ---------------------------------------------------------------------------------------------------
40696: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40697: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40699: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40701: -- 5132302
40694: -- 4262811a Switch Sign
40695: ---------------------------------------------------------------------------------------------------
40696: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40697: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40699: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40701: -- 5132302
40702: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40695: ---------------------------------------------------------------------------------------------------
40696: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40697: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40699: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40701: -- 5132302
40702: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40703: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40696: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40697: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40699: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40701: -- 5132302
40702: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40703: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40704:
40698: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40699: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40701: -- 5132302
40702: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40703: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40704:
40705: END IF;
40706:
40699: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40700: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40701: -- 5132302
40702: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40703: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40704:
40705: END IF;
40706:
40707: -- 4955764
40704:
40705: END IF;
40706:
40707: -- 4955764
40708: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40709: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40710:
40711:
40712: XLA_AE_LINES_PKG.ValidateCurrentLine;
40708: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40709: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40710:
40711:
40712: XLA_AE_LINES_PKG.ValidateCurrentLine;
40713: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40714:
40715: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40716: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40709: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40710:
40711:
40712: XLA_AE_LINES_PKG.ValidateCurrentLine;
40713: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40714:
40715: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40716: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40717: ,p_balance_type_code => l_balance_type_code);
40850: --
40851: -- bulk performance
40852: --
40853: l_balance_type_code VARCHAR2(1);
40854: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
40855: l_log_module VARCHAR2(240);
40856:
40857: --
40858: -- Upgrade strategy
40918: ') = 'SUSPENSE'
40919: THEN
40920:
40921: --
40922: XLA_AE_LINES_PKG.SetNewLine;
40923:
40924: p_balance_type_code := l_balance_type_code;
40925: -- set the flag so later we will know whether the gain loss line needs to be created
40926:
40930:
40931: --
40932: -- bulk performance
40933: --
40934: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
40935: p_header_num => 0); -- 4262811
40936: --
40937: -- set accounting line options
40938: --
40935: p_header_num => 0); -- 4262811
40936: --
40937: -- set accounting line options
40938: --
40939: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
40940: p_natural_side_code => 'C'
40941: , p_gain_or_loss_flag => 'N'
40942: , p_gl_transfer_mode_code => 'S'
40943: , p_acct_entry_type_code => 'A'
40949: --
40950: --
40951: -- set accounting line type info
40952: --
40953: xla_ae_lines_pkg.SetAcctLineType
40954: (p_component_type => l_component_type
40955: ,p_event_type_code => l_event_type_code
40956: ,p_line_definition_owner_code => l_line_definition_owner_code
40957: ,p_line_definition_code => l_line_definition_code
40963: ,p_event_class_code => l_event_class_code);
40964: --
40965: -- set accounting class
40966: --
40967: xla_ae_lines_pkg.SetAcctClass(
40968: p_accounting_class_code => 'SUSPENSE'
40969: , p_ae_header_id => l_ae_header_id
40970: );
40971:
40971:
40972: --
40973: -- set rounding class
40974: --
40975: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40976: 'RECEIVABLE';
40977:
40978: --
40979: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40975: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40976: 'RECEIVABLE';
40977:
40978: --
40979: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40980: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40981: --
40982: -- bulk performance
40983: --
40976: 'RECEIVABLE';
40977:
40978: --
40979: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40980: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40981: --
40982: -- bulk performance
40983: --
40984: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40980: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40981: --
40982: -- bulk performance
40983: --
40984: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40985:
40986: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40987: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40988:
40982: -- bulk performance
40983: --
40984: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40985:
40986: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40987: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40988:
40989: -- 4955764
40990: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40986: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40987: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40988:
40989: -- 4955764
40990: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40991: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
40992:
40993: -- 4458381 Public Sector Enh
40994:
41022: l_rec_acct_attrs.array_char_value(11) := p_source_32;
41023: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
41024: l_rec_acct_attrs.array_num_value(12) := p_source_55;
41025:
41026: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41027: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41028:
41029: ---------------------------------------------------------------------------------------------------------------
41030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41023: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
41024: l_rec_acct_attrs.array_num_value(12) := p_source_55;
41025:
41026: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41027: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41028:
41029: ---------------------------------------------------------------------------------------------------------------
41030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41031: ---------------------------------------------------------------------------------------------------------------
41026: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41027: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41028:
41029: ---------------------------------------------------------------------------------------------------------------
41030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41031: ---------------------------------------------------------------------------------------------------------------
41032: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41033:
41034: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41028:
41029: ---------------------------------------------------------------------------------------------------------------
41030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41031: ---------------------------------------------------------------------------------------------------------------
41032: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41033:
41034: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41035: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41036:
41030: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41031: ---------------------------------------------------------------------------------------------------------------
41032: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41033:
41034: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41035: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41036:
41037: IF xla_accounting_cache_pkg.GetValueChar
41038: (p_source_code => 'LEDGER_CATEGORY_CODE'
41031: ---------------------------------------------------------------------------------------------------------------
41032: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41033:
41034: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41035: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41036:
41037: IF xla_accounting_cache_pkg.GetValueChar
41038: (p_source_code => 'LEDGER_CATEGORY_CODE'
41039: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
41042: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
41043: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
41044: )
41045: THEN
41046: xla_ae_lines_pkg.BflowUpgEntry
41047: (p_business_method_code => l_bflow_method_code
41048: ,p_business_class_code => l_bflow_class_code
41049: ,p_balance_type => l_balance_type_code);
41050: ELSE
41082: , x_value_type_code => l_adr_value_type_code
41083: , p_side => 'NA'
41084: );
41085:
41086: xla_ae_lines_pkg.set_ccid(
41087: p_code_combination_id => l_ccid
41088: , p_value_type_code => l_adr_value_type_code
41089: , p_transaction_coa_id => l_adr_transaction_coa_id
41090: , p_accounting_coa_id => l_adr_accounting_coa_id
41118: xla_accounting_err_pkg.build_message
41119: (p_appli_s_name => 'XLA'
41120: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
41121: ,p_token_1 => 'LINE_NUMBER'
41122: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
41123: ,p_token_2 => 'LINE_TYPE_NAME'
41124: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
41125: l_component_type
41126: ,l_component_code
41154: --
41155: --
41156: ------------------------------------------------------------------------------------------------
41157: -- 4219869 Business Flow
41158: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41159: -- Prior Entry. Currently, the following code is always generated.
41160: ------------------------------------------------------------------------------------------------
41161: XLA_AE_LINES_PKG.ValidateCurrentLine;
41162:
41157: -- 4219869 Business Flow
41158: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41159: -- Prior Entry. Currently, the following code is always generated.
41160: ------------------------------------------------------------------------------------------------
41161: XLA_AE_LINES_PKG.ValidateCurrentLine;
41162:
41163: ------------------------------------------------------------------------------------
41164: -- 4219869 Business Flow
41165: -- Populated credit and debit amounts -- Need to generate this within IF
41163: ------------------------------------------------------------------------------------
41164: -- 4219869 Business Flow
41165: -- Populated credit and debit amounts -- Need to generate this within IF
41166: ------------------------------------------------------------------------------------
41167: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41168:
41169: ----------------------------------------------------------------------------------
41170: -- 4219869 Business Flow
41171: -- Update journal entry status -- Need to generate this within IF
41195: -- To allow MPA report to determine if it should generate report process
41196: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41197: ------------------------------------------------------------------------------------------
41198:
41199: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41200: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41201: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41202: -- call ADRs
41203: -- Bug 4922099
41196: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41197: ------------------------------------------------------------------------------------------
41198:
41199: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41200: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41201: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41202: -- call ADRs
41203: -- Bug 4922099
41204: --
41220: , x_value_type_code => l_adr_value_type_code
41221: , p_side => 'NA'
41222: );
41223:
41224: xla_ae_lines_pkg.set_ccid(
41225: p_code_combination_id => l_ccid
41226: , p_value_type_code => l_adr_value_type_code
41227: , p_transaction_coa_id => l_adr_transaction_coa_id
41228: , p_accounting_coa_id => l_adr_accounting_coa_id
41243:
41244: --
41245: -- Update the line information that should be overwritten
41246: --
41247: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41248: p_header_num => 1);
41249: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41250:
41251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41245: -- Update the line information that should be overwritten
41246: --
41247: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41248: p_header_num => 1);
41249: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41250:
41251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41252:
41253: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41247: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41248: p_header_num => 1);
41249: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41250:
41251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41252:
41253: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41254: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41255: END IF;
41250:
41251: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41252:
41253: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41254: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41255: END IF;
41256:
41257: --
41258: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41257: --
41258: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41259: --
41260: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
41261: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
41262: ELSE
41263: ---------------------------------------------------------------------------------------------------
41264: -- 4262811a Switch Sign
41265: ---------------------------------------------------------------------------------------------------
41262: ELSE
41263: ---------------------------------------------------------------------------------------------------
41264: -- 4262811a Switch Sign
41265: ---------------------------------------------------------------------------------------------------
41266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41263: ---------------------------------------------------------------------------------------------------
41264: -- 4262811a Switch Sign
41265: ---------------------------------------------------------------------------------------------------
41266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41271: -- 5132302
41264: -- 4262811a Switch Sign
41265: ---------------------------------------------------------------------------------------------------
41266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41271: -- 5132302
41272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41265: ---------------------------------------------------------------------------------------------------
41266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41271: -- 5132302
41272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41273: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41266: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41267: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41271: -- 5132302
41272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41273: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41274:
41268: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41271: -- 5132302
41272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41273: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41274:
41275: END IF;
41276:
41269: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41270: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41271: -- 5132302
41272: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41273: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41274:
41275: END IF;
41276:
41277: -- 4955764
41274:
41275: END IF;
41276:
41277: -- 4955764
41278: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41279: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41280:
41281:
41282: XLA_AE_LINES_PKG.ValidateCurrentLine;
41278: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41279: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41280:
41281:
41282: XLA_AE_LINES_PKG.ValidateCurrentLine;
41283: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41284:
41285: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41286: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41279: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41280:
41281:
41282: XLA_AE_LINES_PKG.ValidateCurrentLine;
41283: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41284:
41285: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41286: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41287: ,p_balance_type_code => l_balance_type_code);
41420: --
41421: -- bulk performance
41422: --
41423: l_balance_type_code VARCHAR2(1);
41424: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
41425: l_log_module VARCHAR2(240);
41426:
41427: --
41428: -- Upgrade strategy
41488: ') = 'TAX'
41489: THEN
41490:
41491: --
41492: XLA_AE_LINES_PKG.SetNewLine;
41493:
41494: p_balance_type_code := l_balance_type_code;
41495: -- set the flag so later we will know whether the gain loss line needs to be created
41496:
41500:
41501: --
41502: -- bulk performance
41503: --
41504: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
41505: p_header_num => 0); -- 4262811
41506: --
41507: -- set accounting line options
41508: --
41505: p_header_num => 0); -- 4262811
41506: --
41507: -- set accounting line options
41508: --
41509: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
41510: p_natural_side_code => 'C'
41511: , p_gain_or_loss_flag => 'N'
41512: , p_gl_transfer_mode_code => 'S'
41513: , p_acct_entry_type_code => 'A'
41519: --
41520: --
41521: -- set accounting line type info
41522: --
41523: xla_ae_lines_pkg.SetAcctLineType
41524: (p_component_type => l_component_type
41525: ,p_event_type_code => l_event_type_code
41526: ,p_line_definition_owner_code => l_line_definition_owner_code
41527: ,p_line_definition_code => l_line_definition_code
41533: ,p_event_class_code => l_event_class_code);
41534: --
41535: -- set accounting class
41536: --
41537: xla_ae_lines_pkg.SetAcctClass(
41538: p_accounting_class_code => 'TAX'
41539: , p_ae_header_id => l_ae_header_id
41540: );
41541:
41541:
41542: --
41543: -- set rounding class
41544: --
41545: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41546: 'RECEIVABLE';
41547:
41548: --
41549: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41545: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41546: 'RECEIVABLE';
41547:
41548: --
41549: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41550: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41551: --
41552: -- bulk performance
41553: --
41546: 'RECEIVABLE';
41547:
41548: --
41549: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41550: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41551: --
41552: -- bulk performance
41553: --
41554: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41550: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41551: --
41552: -- bulk performance
41553: --
41554: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41555:
41556: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41557: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41558:
41552: -- bulk performance
41553: --
41554: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41555:
41556: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41557: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41558:
41559: -- 4955764
41560: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41556: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41557: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41558:
41559: -- 4955764
41560: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41561: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
41562:
41563: -- 4458381 Public Sector Enh
41564:
41592: l_rec_acct_attrs.array_char_value(11) := p_source_32;
41593: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
41594: l_rec_acct_attrs.array_num_value(12) := p_source_55;
41595:
41596: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41597: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41598:
41599: ---------------------------------------------------------------------------------------------------------------
41600: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41593: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
41594: l_rec_acct_attrs.array_num_value(12) := p_source_55;
41595:
41596: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41597: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41598:
41599: ---------------------------------------------------------------------------------------------------------------
41600: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41601: ---------------------------------------------------------------------------------------------------------------
41596: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41597: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41598:
41599: ---------------------------------------------------------------------------------------------------------------
41600: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41601: ---------------------------------------------------------------------------------------------------------------
41602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41603:
41604: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41598:
41599: ---------------------------------------------------------------------------------------------------------------
41600: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41601: ---------------------------------------------------------------------------------------------------------------
41602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41603:
41604: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41605: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41606:
41600: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41601: ---------------------------------------------------------------------------------------------------------------
41602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41603:
41604: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41605: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41606:
41607: IF xla_accounting_cache_pkg.GetValueChar
41608: (p_source_code => 'LEDGER_CATEGORY_CODE'
41601: ---------------------------------------------------------------------------------------------------------------
41602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41603:
41604: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41605: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41606:
41607: IF xla_accounting_cache_pkg.GetValueChar
41608: (p_source_code => 'LEDGER_CATEGORY_CODE'
41609: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
41612: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
41613: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
41614: )
41615: THEN
41616: xla_ae_lines_pkg.BflowUpgEntry
41617: (p_business_method_code => l_bflow_method_code
41618: ,p_business_class_code => l_bflow_class_code
41619: ,p_balance_type => l_balance_type_code);
41620: ELSE
41652: , x_value_type_code => l_adr_value_type_code
41653: , p_side => 'NA'
41654: );
41655:
41656: xla_ae_lines_pkg.set_ccid(
41657: p_code_combination_id => l_ccid
41658: , p_value_type_code => l_adr_value_type_code
41659: , p_transaction_coa_id => l_adr_transaction_coa_id
41660: , p_accounting_coa_id => l_adr_accounting_coa_id
41688: xla_accounting_err_pkg.build_message
41689: (p_appli_s_name => 'XLA'
41690: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
41691: ,p_token_1 => 'LINE_NUMBER'
41692: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
41693: ,p_token_2 => 'LINE_TYPE_NAME'
41694: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
41695: l_component_type
41696: ,l_component_code
41724: --
41725: --
41726: ------------------------------------------------------------------------------------------------
41727: -- 4219869 Business Flow
41728: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41729: -- Prior Entry. Currently, the following code is always generated.
41730: ------------------------------------------------------------------------------------------------
41731: XLA_AE_LINES_PKG.ValidateCurrentLine;
41732:
41727: -- 4219869 Business Flow
41728: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41729: -- Prior Entry. Currently, the following code is always generated.
41730: ------------------------------------------------------------------------------------------------
41731: XLA_AE_LINES_PKG.ValidateCurrentLine;
41732:
41733: ------------------------------------------------------------------------------------
41734: -- 4219869 Business Flow
41735: -- Populated credit and debit amounts -- Need to generate this within IF
41733: ------------------------------------------------------------------------------------
41734: -- 4219869 Business Flow
41735: -- Populated credit and debit amounts -- Need to generate this within IF
41736: ------------------------------------------------------------------------------------
41737: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41738:
41739: ----------------------------------------------------------------------------------
41740: -- 4219869 Business Flow
41741: -- Update journal entry status -- Need to generate this within IF
41765: -- To allow MPA report to determine if it should generate report process
41766: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41767: ------------------------------------------------------------------------------------------
41768:
41769: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41770: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41771: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41772: -- call ADRs
41773: -- Bug 4922099
41766: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41767: ------------------------------------------------------------------------------------------
41768:
41769: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41770: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41771: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41772: -- call ADRs
41773: -- Bug 4922099
41774: --
41790: , x_value_type_code => l_adr_value_type_code
41791: , p_side => 'NA'
41792: );
41793:
41794: xla_ae_lines_pkg.set_ccid(
41795: p_code_combination_id => l_ccid
41796: , p_value_type_code => l_adr_value_type_code
41797: , p_transaction_coa_id => l_adr_transaction_coa_id
41798: , p_accounting_coa_id => l_adr_accounting_coa_id
41813:
41814: --
41815: -- Update the line information that should be overwritten
41816: --
41817: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41818: p_header_num => 1);
41819: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41820:
41821: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41815: -- Update the line information that should be overwritten
41816: --
41817: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41818: p_header_num => 1);
41819: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41820:
41821: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41822:
41823: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41817: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41818: p_header_num => 1);
41819: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41820:
41821: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41822:
41823: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41824: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41825: END IF;
41820:
41821: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41822:
41823: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41824: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41825: END IF;
41826:
41827: --
41828: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41827: --
41828: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41829: --
41830: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
41831: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
41832: ELSE
41833: ---------------------------------------------------------------------------------------------------
41834: -- 4262811a Switch Sign
41835: ---------------------------------------------------------------------------------------------------
41832: ELSE
41833: ---------------------------------------------------------------------------------------------------
41834: -- 4262811a Switch Sign
41835: ---------------------------------------------------------------------------------------------------
41836: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41837: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41838: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41839: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41840: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41833: ---------------------------------------------------------------------------------------------------
41834: -- 4262811a Switch Sign
41835: ---------------------------------------------------------------------------------------------------
41836: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41837: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41838: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41839: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41840: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41841: -- 5132302
41834: -- 4262811a Switch Sign
41835: ---------------------------------------------------------------------------------------------------
41836: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41837: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41838: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41839: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41840: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41841: -- 5132302
41842: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41835: ---------------------------------------------------------------------------------------------------
41836: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41837: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41838: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41839: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41840: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41841: -- 5132302
41842: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41843: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41836: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41837: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41838: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41839: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41840: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41841: -- 5132302
41842: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41843: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41844:
41838: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41839: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41840: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41841: -- 5132302
41842: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41843: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41844:
41845: END IF;
41846:
41839: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41840: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41841: -- 5132302
41842: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41843: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41844:
41845: END IF;
41846:
41847: -- 4955764
41844:
41845: END IF;
41846:
41847: -- 4955764
41848: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41849: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41850:
41851:
41852: XLA_AE_LINES_PKG.ValidateCurrentLine;
41848: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41849: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41850:
41851:
41852: XLA_AE_LINES_PKG.ValidateCurrentLine;
41853: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41854:
41855: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41856: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41849: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41850:
41851:
41852: XLA_AE_LINES_PKG.ValidateCurrentLine;
41853: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41854:
41855: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41856: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41857: ,p_balance_type_code => l_balance_type_code);
41992: --
41993: -- bulk performance
41994: --
41995: l_balance_type_code VARCHAR2(1);
41996: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
41997: l_log_module VARCHAR2(240);
41998:
41999: --
42000: -- Upgrade strategy
42061: p_source_66 IS NULL
42062: THEN
42063:
42064: --
42065: XLA_AE_LINES_PKG.SetNewLine;
42066:
42067: p_balance_type_code := l_balance_type_code;
42068: -- set the flag so later we will know whether the gain loss line needs to be created
42069:
42073:
42074: --
42075: -- bulk performance
42076: --
42077: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
42078: p_header_num => 0); -- 4262811
42079: --
42080: -- set accounting line options
42081: --
42078: p_header_num => 0); -- 4262811
42079: --
42080: -- set accounting line options
42081: --
42082: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
42083: p_natural_side_code => 'C'
42084: , p_gain_or_loss_flag => 'N'
42085: , p_gl_transfer_mode_code => 'S'
42086: , p_acct_entry_type_code => 'A'
42092: --
42093: --
42094: -- set accounting line type info
42095: --
42096: xla_ae_lines_pkg.SetAcctLineType
42097: (p_component_type => l_component_type
42098: ,p_event_type_code => l_event_type_code
42099: ,p_line_definition_owner_code => l_line_definition_owner_code
42100: ,p_line_definition_code => l_line_definition_code
42106: ,p_event_class_code => l_event_class_code);
42107: --
42108: -- set accounting class
42109: --
42110: xla_ae_lines_pkg.SetAcctClass(
42111: p_accounting_class_code => 'UNBILL'
42112: , p_ae_header_id => l_ae_header_id
42113: );
42114:
42114:
42115: --
42116: -- set rounding class
42117: --
42118: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42119: 'UNBILL';
42120:
42121: --
42122: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42118: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42119: 'UNBILL';
42120:
42121: --
42122: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42123: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42124: --
42125: -- bulk performance
42126: --
42119: 'UNBILL';
42120:
42121: --
42122: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42123: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42124: --
42125: -- bulk performance
42126: --
42127: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42123: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42124: --
42125: -- bulk performance
42126: --
42127: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42128:
42129: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42130: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42131:
42125: -- bulk performance
42126: --
42127: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42128:
42129: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42130: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42131:
42132: -- 4955764
42133: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42129: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42130: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42131:
42132: -- 4955764
42133: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42134: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
42135:
42136: -- 4458381 Public Sector Enh
42137:
42165: l_rec_acct_attrs.array_char_value(11) := p_source_32;
42166: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
42167: l_rec_acct_attrs.array_num_value(12) := p_source_55;
42168:
42169: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42170: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42171:
42172: ---------------------------------------------------------------------------------------------------------------
42173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42166: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
42167: l_rec_acct_attrs.array_num_value(12) := p_source_55;
42168:
42169: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42170: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42171:
42172: ---------------------------------------------------------------------------------------------------------------
42173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42174: ---------------------------------------------------------------------------------------------------------------
42169: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42170: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42171:
42172: ---------------------------------------------------------------------------------------------------------------
42173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42174: ---------------------------------------------------------------------------------------------------------------
42175: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42176:
42177: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42171:
42172: ---------------------------------------------------------------------------------------------------------------
42173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42174: ---------------------------------------------------------------------------------------------------------------
42175: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42176:
42177: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42178: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42179:
42173: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42174: ---------------------------------------------------------------------------------------------------------------
42175: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42176:
42177: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42178: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42179:
42180: IF xla_accounting_cache_pkg.GetValueChar
42181: (p_source_code => 'LEDGER_CATEGORY_CODE'
42174: ---------------------------------------------------------------------------------------------------------------
42175: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42176:
42177: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42178: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42179:
42180: IF xla_accounting_cache_pkg.GetValueChar
42181: (p_source_code => 'LEDGER_CATEGORY_CODE'
42182: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
42185: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
42186: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
42187: )
42188: THEN
42189: xla_ae_lines_pkg.BflowUpgEntry
42190: (p_business_method_code => l_bflow_method_code
42191: ,p_business_class_code => l_bflow_class_code
42192: ,p_balance_type => l_balance_type_code);
42193: ELSE
42225: , x_value_type_code => l_adr_value_type_code
42226: , p_side => 'NA'
42227: );
42228:
42229: xla_ae_lines_pkg.set_ccid(
42230: p_code_combination_id => l_ccid
42231: , p_value_type_code => l_adr_value_type_code
42232: , p_transaction_coa_id => l_adr_transaction_coa_id
42233: , p_accounting_coa_id => l_adr_accounting_coa_id
42261: xla_accounting_err_pkg.build_message
42262: (p_appli_s_name => 'XLA'
42263: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
42264: ,p_token_1 => 'LINE_NUMBER'
42265: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
42266: ,p_token_2 => 'LINE_TYPE_NAME'
42267: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
42268: l_component_type
42269: ,l_component_code
42297: --
42298: --
42299: ------------------------------------------------------------------------------------------------
42300: -- 4219869 Business Flow
42301: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42302: -- Prior Entry. Currently, the following code is always generated.
42303: ------------------------------------------------------------------------------------------------
42304: XLA_AE_LINES_PKG.ValidateCurrentLine;
42305:
42300: -- 4219869 Business Flow
42301: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42302: -- Prior Entry. Currently, the following code is always generated.
42303: ------------------------------------------------------------------------------------------------
42304: XLA_AE_LINES_PKG.ValidateCurrentLine;
42305:
42306: ------------------------------------------------------------------------------------
42307: -- 4219869 Business Flow
42308: -- Populated credit and debit amounts -- Need to generate this within IF
42306: ------------------------------------------------------------------------------------
42307: -- 4219869 Business Flow
42308: -- Populated credit and debit amounts -- Need to generate this within IF
42309: ------------------------------------------------------------------------------------
42310: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42311:
42312: ----------------------------------------------------------------------------------
42313: -- 4219869 Business Flow
42314: -- Update journal entry status -- Need to generate this within IF
42338: -- To allow MPA report to determine if it should generate report process
42339: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42340: ------------------------------------------------------------------------------------------
42341:
42342: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42343: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42344: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42345: -- call ADRs
42346: -- Bug 4922099
42339: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42340: ------------------------------------------------------------------------------------------
42341:
42342: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42343: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42344: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42345: -- call ADRs
42346: -- Bug 4922099
42347: --
42363: , x_value_type_code => l_adr_value_type_code
42364: , p_side => 'NA'
42365: );
42366:
42367: xla_ae_lines_pkg.set_ccid(
42368: p_code_combination_id => l_ccid
42369: , p_value_type_code => l_adr_value_type_code
42370: , p_transaction_coa_id => l_adr_transaction_coa_id
42371: , p_accounting_coa_id => l_adr_accounting_coa_id
42386:
42387: --
42388: -- Update the line information that should be overwritten
42389: --
42390: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42391: p_header_num => 1);
42392: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42393:
42394: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42388: -- Update the line information that should be overwritten
42389: --
42390: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42391: p_header_num => 1);
42392: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42393:
42394: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42395:
42396: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42390: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42391: p_header_num => 1);
42392: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42393:
42394: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42395:
42396: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42397: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42398: END IF;
42393:
42394: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42395:
42396: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42397: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42398: END IF;
42399:
42400: --
42401: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42400: --
42401: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42402: --
42403: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
42404: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
42405: ELSE
42406: ---------------------------------------------------------------------------------------------------
42407: -- 4262811a Switch Sign
42408: ---------------------------------------------------------------------------------------------------
42405: ELSE
42406: ---------------------------------------------------------------------------------------------------
42407: -- 4262811a Switch Sign
42408: ---------------------------------------------------------------------------------------------------
42409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42406: ---------------------------------------------------------------------------------------------------
42407: -- 4262811a Switch Sign
42408: ---------------------------------------------------------------------------------------------------
42409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42414: -- 5132302
42407: -- 4262811a Switch Sign
42408: ---------------------------------------------------------------------------------------------------
42409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42414: -- 5132302
42415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42408: ---------------------------------------------------------------------------------------------------
42409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42414: -- 5132302
42415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42409: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42414: -- 5132302
42415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42417:
42411: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42414: -- 5132302
42415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42417:
42418: END IF;
42419:
42412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42413: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42414: -- 5132302
42415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42416: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42417:
42418: END IF;
42419:
42420: -- 4955764
42417:
42418: END IF;
42419:
42420: -- 4955764
42421: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42422: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42423:
42424:
42425: XLA_AE_LINES_PKG.ValidateCurrentLine;
42421: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42422: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42423:
42424:
42425: XLA_AE_LINES_PKG.ValidateCurrentLine;
42426: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42427:
42428: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42429: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42422: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42423:
42424:
42425: XLA_AE_LINES_PKG.ValidateCurrentLine;
42426: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42427:
42428: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42429: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42430: ,p_balance_type_code => l_balance_type_code);
42565: --
42566: -- bulk performance
42567: --
42568: l_balance_type_code VARCHAR2(1);
42569: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
42570: l_log_module VARCHAR2(240);
42571:
42572: --
42573: -- Upgrade strategy
42635: ') = 'Y'
42636: THEN
42637:
42638: --
42639: XLA_AE_LINES_PKG.SetNewLine;
42640:
42641: p_balance_type_code := l_balance_type_code;
42642: -- set the flag so later we will know whether the gain loss line needs to be created
42643:
42647:
42648: --
42649: -- bulk performance
42650: --
42651: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
42652: p_header_num => 0); -- 4262811
42653: --
42654: -- set accounting line options
42655: --
42652: p_header_num => 0); -- 4262811
42653: --
42654: -- set accounting line options
42655: --
42656: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
42657: p_natural_side_code => 'C'
42658: , p_gain_or_loss_flag => 'N'
42659: , p_gl_transfer_mode_code => 'S'
42660: , p_acct_entry_type_code => 'A'
42666: --
42667: --
42668: -- set accounting line type info
42669: --
42670: xla_ae_lines_pkg.SetAcctLineType
42671: (p_component_type => l_component_type
42672: ,p_event_type_code => l_event_type_code
42673: ,p_line_definition_owner_code => l_line_definition_owner_code
42674: ,p_line_definition_code => l_line_definition_code
42680: ,p_event_class_code => l_event_class_code);
42681: --
42682: -- set accounting class
42683: --
42684: xla_ae_lines_pkg.SetAcctClass(
42685: p_accounting_class_code => 'UNBILL'
42686: , p_ae_header_id => l_ae_header_id
42687: );
42688:
42688:
42689: --
42690: -- set rounding class
42691: --
42692: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42693: 'UNBILL';
42694:
42695: --
42696: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42692: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42693: 'UNBILL';
42694:
42695: --
42696: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42697: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42698: --
42699: -- bulk performance
42700: --
42693: 'UNBILL';
42694:
42695: --
42696: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42697: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42698: --
42699: -- bulk performance
42700: --
42701: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42697: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42698: --
42699: -- bulk performance
42700: --
42701: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42702:
42703: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42704: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42705:
42699: -- bulk performance
42700: --
42701: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42702:
42703: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42704: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42705:
42706: -- 4955764
42707: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42703: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42704: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42705:
42706: -- 4955764
42707: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42708: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
42709:
42710: -- 4458381 Public Sector Enh
42711:
42739: l_rec_acct_attrs.array_char_value(11) := p_source_32;
42740: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
42741: l_rec_acct_attrs.array_num_value(12) := p_source_55;
42742:
42743: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42744: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42745:
42746: ---------------------------------------------------------------------------------------------------------------
42747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42740: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
42741: l_rec_acct_attrs.array_num_value(12) := p_source_55;
42742:
42743: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42744: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42745:
42746: ---------------------------------------------------------------------------------------------------------------
42747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42748: ---------------------------------------------------------------------------------------------------------------
42743: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42744: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42745:
42746: ---------------------------------------------------------------------------------------------------------------
42747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42748: ---------------------------------------------------------------------------------------------------------------
42749: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42750:
42751: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42745:
42746: ---------------------------------------------------------------------------------------------------------------
42747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42748: ---------------------------------------------------------------------------------------------------------------
42749: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42750:
42751: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42752: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42753:
42747: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42748: ---------------------------------------------------------------------------------------------------------------
42749: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42750:
42751: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42752: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42753:
42754: IF xla_accounting_cache_pkg.GetValueChar
42755: (p_source_code => 'LEDGER_CATEGORY_CODE'
42748: ---------------------------------------------------------------------------------------------------------------
42749: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42750:
42751: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42752: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42753:
42754: IF xla_accounting_cache_pkg.GetValueChar
42755: (p_source_code => 'LEDGER_CATEGORY_CODE'
42756: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
42759: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
42760: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
42761: )
42762: THEN
42763: xla_ae_lines_pkg.BflowUpgEntry
42764: (p_business_method_code => l_bflow_method_code
42765: ,p_business_class_code => l_bflow_class_code
42766: ,p_balance_type => l_balance_type_code);
42767: ELSE
42799: , x_value_type_code => l_adr_value_type_code
42800: , p_side => 'NA'
42801: );
42802:
42803: xla_ae_lines_pkg.set_ccid(
42804: p_code_combination_id => l_ccid
42805: , p_value_type_code => l_adr_value_type_code
42806: , p_transaction_coa_id => l_adr_transaction_coa_id
42807: , p_accounting_coa_id => l_adr_accounting_coa_id
42835: xla_accounting_err_pkg.build_message
42836: (p_appli_s_name => 'XLA'
42837: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
42838: ,p_token_1 => 'LINE_NUMBER'
42839: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
42840: ,p_token_2 => 'LINE_TYPE_NAME'
42841: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
42842: l_component_type
42843: ,l_component_code
42871: --
42872: --
42873: ------------------------------------------------------------------------------------------------
42874: -- 4219869 Business Flow
42875: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42876: -- Prior Entry. Currently, the following code is always generated.
42877: ------------------------------------------------------------------------------------------------
42878: XLA_AE_LINES_PKG.ValidateCurrentLine;
42879:
42874: -- 4219869 Business Flow
42875: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42876: -- Prior Entry. Currently, the following code is always generated.
42877: ------------------------------------------------------------------------------------------------
42878: XLA_AE_LINES_PKG.ValidateCurrentLine;
42879:
42880: ------------------------------------------------------------------------------------
42881: -- 4219869 Business Flow
42882: -- Populated credit and debit amounts -- Need to generate this within IF
42880: ------------------------------------------------------------------------------------
42881: -- 4219869 Business Flow
42882: -- Populated credit and debit amounts -- Need to generate this within IF
42883: ------------------------------------------------------------------------------------
42884: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42885:
42886: ----------------------------------------------------------------------------------
42887: -- 4219869 Business Flow
42888: -- Update journal entry status -- Need to generate this within IF
42912: -- To allow MPA report to determine if it should generate report process
42913: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42914: ------------------------------------------------------------------------------------------
42915:
42916: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42917: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42918: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42919: -- call ADRs
42920: -- Bug 4922099
42913: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42914: ------------------------------------------------------------------------------------------
42915:
42916: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42917: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42918: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42919: -- call ADRs
42920: -- Bug 4922099
42921: --
42937: , x_value_type_code => l_adr_value_type_code
42938: , p_side => 'NA'
42939: );
42940:
42941: xla_ae_lines_pkg.set_ccid(
42942: p_code_combination_id => l_ccid
42943: , p_value_type_code => l_adr_value_type_code
42944: , p_transaction_coa_id => l_adr_transaction_coa_id
42945: , p_accounting_coa_id => l_adr_accounting_coa_id
42960:
42961: --
42962: -- Update the line information that should be overwritten
42963: --
42964: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42965: p_header_num => 1);
42966: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42967:
42968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42962: -- Update the line information that should be overwritten
42963: --
42964: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42965: p_header_num => 1);
42966: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42967:
42968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42969:
42970: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42964: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42965: p_header_num => 1);
42966: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42967:
42968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42969:
42970: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42971: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42972: END IF;
42967:
42968: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42969:
42970: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42971: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42972: END IF;
42973:
42974: --
42975: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42974: --
42975: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42976: --
42977: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
42978: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
42979: ELSE
42980: ---------------------------------------------------------------------------------------------------
42981: -- 4262811a Switch Sign
42982: ---------------------------------------------------------------------------------------------------
42979: ELSE
42980: ---------------------------------------------------------------------------------------------------
42981: -- 4262811a Switch Sign
42982: ---------------------------------------------------------------------------------------------------
42983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42980: ---------------------------------------------------------------------------------------------------
42981: -- 4262811a Switch Sign
42982: ---------------------------------------------------------------------------------------------------
42983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42988: -- 5132302
42981: -- 4262811a Switch Sign
42982: ---------------------------------------------------------------------------------------------------
42983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42988: -- 5132302
42989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42982: ---------------------------------------------------------------------------------------------------
42983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42988: -- 5132302
42989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42990: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42983: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42984: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42988: -- 5132302
42989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42990: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42991:
42985: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42988: -- 5132302
42989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42990: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42991:
42992: END IF;
42993:
42986: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42987: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42988: -- 5132302
42989: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42990: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42991:
42992: END IF;
42993:
42994: -- 4955764
42991:
42992: END IF;
42993:
42994: -- 4955764
42995: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42996: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42997:
42998:
42999: XLA_AE_LINES_PKG.ValidateCurrentLine;
42995: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42996: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42997:
42998:
42999: XLA_AE_LINES_PKG.ValidateCurrentLine;
43000: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43001:
43002: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43003: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42996: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42997:
42998:
42999: XLA_AE_LINES_PKG.ValidateCurrentLine;
43000: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43001:
43002: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43003: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43004: ,p_balance_type_code => l_balance_type_code);
43139: --
43140: -- bulk performance
43141: --
43142: l_balance_type_code VARCHAR2(1);
43143: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
43144: l_log_module VARCHAR2(240);
43145:
43146: --
43147: -- Upgrade strategy
43208: p_source_66 IS NULL
43209: THEN
43210:
43211: --
43212: XLA_AE_LINES_PKG.SetNewLine;
43213:
43214: p_balance_type_code := l_balance_type_code;
43215: -- set the flag so later we will know whether the gain loss line needs to be created
43216:
43220:
43221: --
43222: -- bulk performance
43223: --
43224: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
43225: p_header_num => 0); -- 4262811
43226: --
43227: -- set accounting line options
43228: --
43225: p_header_num => 0); -- 4262811
43226: --
43227: -- set accounting line options
43228: --
43229: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
43230: p_natural_side_code => 'C'
43231: , p_gain_or_loss_flag => 'N'
43232: , p_gl_transfer_mode_code => 'S'
43233: , p_acct_entry_type_code => 'A'
43239: --
43240: --
43241: -- set accounting line type info
43242: --
43243: xla_ae_lines_pkg.SetAcctLineType
43244: (p_component_type => l_component_type
43245: ,p_event_type_code => l_event_type_code
43246: ,p_line_definition_owner_code => l_line_definition_owner_code
43247: ,p_line_definition_code => l_line_definition_code
43253: ,p_event_class_code => l_event_class_code);
43254: --
43255: -- set accounting class
43256: --
43257: xla_ae_lines_pkg.SetAcctClass(
43258: p_accounting_class_code => 'UNEARNED_REVENUE'
43259: , p_ae_header_id => l_ae_header_id
43260: );
43261:
43261:
43262: --
43263: -- set rounding class
43264: --
43265: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43266: 'RECEIVABLE';
43267:
43268: --
43269: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43265: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43266: 'RECEIVABLE';
43267:
43268: --
43269: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43270: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43271: --
43272: -- bulk performance
43273: --
43266: 'RECEIVABLE';
43267:
43268: --
43269: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43270: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43271: --
43272: -- bulk performance
43273: --
43274: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43270: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43271: --
43272: -- bulk performance
43273: --
43274: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43275:
43276: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43277: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43278:
43272: -- bulk performance
43273: --
43274: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43275:
43276: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43277: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43278:
43279: -- 4955764
43280: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43276: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43277: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43278:
43279: -- 4955764
43280: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43281: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
43282:
43283: -- 4458381 Public Sector Enh
43284:
43312: l_rec_acct_attrs.array_char_value(11) := p_source_32;
43313: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
43314: l_rec_acct_attrs.array_num_value(12) := p_source_55;
43315:
43316: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43317: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43318:
43319: ---------------------------------------------------------------------------------------------------------------
43320: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43313: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
43314: l_rec_acct_attrs.array_num_value(12) := p_source_55;
43315:
43316: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43317: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43318:
43319: ---------------------------------------------------------------------------------------------------------------
43320: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43321: ---------------------------------------------------------------------------------------------------------------
43316: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43317: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43318:
43319: ---------------------------------------------------------------------------------------------------------------
43320: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43321: ---------------------------------------------------------------------------------------------------------------
43322: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43323:
43324: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43318:
43319: ---------------------------------------------------------------------------------------------------------------
43320: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43321: ---------------------------------------------------------------------------------------------------------------
43322: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43323:
43324: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43325: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43326:
43320: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43321: ---------------------------------------------------------------------------------------------------------------
43322: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43323:
43324: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43325: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43326:
43327: IF xla_accounting_cache_pkg.GetValueChar
43328: (p_source_code => 'LEDGER_CATEGORY_CODE'
43321: ---------------------------------------------------------------------------------------------------------------
43322: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43323:
43324: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43325: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43326:
43327: IF xla_accounting_cache_pkg.GetValueChar
43328: (p_source_code => 'LEDGER_CATEGORY_CODE'
43329: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
43332: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
43333: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
43334: )
43335: THEN
43336: xla_ae_lines_pkg.BflowUpgEntry
43337: (p_business_method_code => l_bflow_method_code
43338: ,p_business_class_code => l_bflow_class_code
43339: ,p_balance_type => l_balance_type_code);
43340: ELSE
43372: , x_value_type_code => l_adr_value_type_code
43373: , p_side => 'NA'
43374: );
43375:
43376: xla_ae_lines_pkg.set_ccid(
43377: p_code_combination_id => l_ccid
43378: , p_value_type_code => l_adr_value_type_code
43379: , p_transaction_coa_id => l_adr_transaction_coa_id
43380: , p_accounting_coa_id => l_adr_accounting_coa_id
43408: xla_accounting_err_pkg.build_message
43409: (p_appli_s_name => 'XLA'
43410: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
43411: ,p_token_1 => 'LINE_NUMBER'
43412: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
43413: ,p_token_2 => 'LINE_TYPE_NAME'
43414: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
43415: l_component_type
43416: ,l_component_code
43444: --
43445: --
43446: ------------------------------------------------------------------------------------------------
43447: -- 4219869 Business Flow
43448: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43449: -- Prior Entry. Currently, the following code is always generated.
43450: ------------------------------------------------------------------------------------------------
43451: XLA_AE_LINES_PKG.ValidateCurrentLine;
43452:
43447: -- 4219869 Business Flow
43448: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43449: -- Prior Entry. Currently, the following code is always generated.
43450: ------------------------------------------------------------------------------------------------
43451: XLA_AE_LINES_PKG.ValidateCurrentLine;
43452:
43453: ------------------------------------------------------------------------------------
43454: -- 4219869 Business Flow
43455: -- Populated credit and debit amounts -- Need to generate this within IF
43453: ------------------------------------------------------------------------------------
43454: -- 4219869 Business Flow
43455: -- Populated credit and debit amounts -- Need to generate this within IF
43456: ------------------------------------------------------------------------------------
43457: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43458:
43459: ----------------------------------------------------------------------------------
43460: -- 4219869 Business Flow
43461: -- Update journal entry status -- Need to generate this within IF
43485: -- To allow MPA report to determine if it should generate report process
43486: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43487: ------------------------------------------------------------------------------------------
43488:
43489: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43490: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43491: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43492: -- call ADRs
43493: -- Bug 4922099
43486: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43487: ------------------------------------------------------------------------------------------
43488:
43489: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43490: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43491: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43492: -- call ADRs
43493: -- Bug 4922099
43494: --
43510: , x_value_type_code => l_adr_value_type_code
43511: , p_side => 'NA'
43512: );
43513:
43514: xla_ae_lines_pkg.set_ccid(
43515: p_code_combination_id => l_ccid
43516: , p_value_type_code => l_adr_value_type_code
43517: , p_transaction_coa_id => l_adr_transaction_coa_id
43518: , p_accounting_coa_id => l_adr_accounting_coa_id
43533:
43534: --
43535: -- Update the line information that should be overwritten
43536: --
43537: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43538: p_header_num => 1);
43539: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43540:
43541: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43535: -- Update the line information that should be overwritten
43536: --
43537: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43538: p_header_num => 1);
43539: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43540:
43541: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43542:
43543: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43537: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43538: p_header_num => 1);
43539: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43540:
43541: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43542:
43543: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43544: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43545: END IF;
43540:
43541: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43542:
43543: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43544: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43545: END IF;
43546:
43547: --
43548: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43547: --
43548: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43549: --
43550: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
43551: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
43552: ELSE
43553: ---------------------------------------------------------------------------------------------------
43554: -- 4262811a Switch Sign
43555: ---------------------------------------------------------------------------------------------------
43552: ELSE
43553: ---------------------------------------------------------------------------------------------------
43554: -- 4262811a Switch Sign
43555: ---------------------------------------------------------------------------------------------------
43556: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43557: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43558: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43559: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43560: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43553: ---------------------------------------------------------------------------------------------------
43554: -- 4262811a Switch Sign
43555: ---------------------------------------------------------------------------------------------------
43556: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43557: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43558: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43559: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43560: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43561: -- 5132302
43554: -- 4262811a Switch Sign
43555: ---------------------------------------------------------------------------------------------------
43556: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43557: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43558: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43559: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43560: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43561: -- 5132302
43562: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43555: ---------------------------------------------------------------------------------------------------
43556: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43557: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43558: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43559: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43560: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43561: -- 5132302
43562: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43563: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43556: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43557: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43558: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43559: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43560: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43561: -- 5132302
43562: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43563: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43564:
43558: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43559: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43560: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43561: -- 5132302
43562: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43563: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43564:
43565: END IF;
43566:
43559: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43560: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43561: -- 5132302
43562: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43563: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43564:
43565: END IF;
43566:
43567: -- 4955764
43564:
43565: END IF;
43566:
43567: -- 4955764
43568: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43569: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43570:
43571:
43572: XLA_AE_LINES_PKG.ValidateCurrentLine;
43568: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43569: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43570:
43571:
43572: XLA_AE_LINES_PKG.ValidateCurrentLine;
43573: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43574:
43575: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43576: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43569: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43570:
43571:
43572: XLA_AE_LINES_PKG.ValidateCurrentLine;
43573: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43574:
43575: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43576: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43577: ,p_balance_type_code => l_balance_type_code);
43712: --
43713: -- bulk performance
43714: --
43715: l_balance_type_code VARCHAR2(1);
43716: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
43717: l_log_module VARCHAR2(240);
43718:
43719: --
43720: -- Upgrade strategy
43782: ') = 'Y'
43783: THEN
43784:
43785: --
43786: XLA_AE_LINES_PKG.SetNewLine;
43787:
43788: p_balance_type_code := l_balance_type_code;
43789: -- set the flag so later we will know whether the gain loss line needs to be created
43790:
43794:
43795: --
43796: -- bulk performance
43797: --
43798: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
43799: p_header_num => 0); -- 4262811
43800: --
43801: -- set accounting line options
43802: --
43799: p_header_num => 0); -- 4262811
43800: --
43801: -- set accounting line options
43802: --
43803: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
43804: p_natural_side_code => 'C'
43805: , p_gain_or_loss_flag => 'N'
43806: , p_gl_transfer_mode_code => 'S'
43807: , p_acct_entry_type_code => 'A'
43813: --
43814: --
43815: -- set accounting line type info
43816: --
43817: xla_ae_lines_pkg.SetAcctLineType
43818: (p_component_type => l_component_type
43819: ,p_event_type_code => l_event_type_code
43820: ,p_line_definition_owner_code => l_line_definition_owner_code
43821: ,p_line_definition_code => l_line_definition_code
43827: ,p_event_class_code => l_event_class_code);
43828: --
43829: -- set accounting class
43830: --
43831: xla_ae_lines_pkg.SetAcctClass(
43832: p_accounting_class_code => 'UNEARNED_REVENUE'
43833: , p_ae_header_id => l_ae_header_id
43834: );
43835:
43835:
43836: --
43837: -- set rounding class
43838: --
43839: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43840: 'RECEIVABLE';
43841:
43842: --
43843: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43839: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43840: 'RECEIVABLE';
43841:
43842: --
43843: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43844: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43845: --
43846: -- bulk performance
43847: --
43840: 'RECEIVABLE';
43841:
43842: --
43843: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43844: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43845: --
43846: -- bulk performance
43847: --
43848: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43844: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43845: --
43846: -- bulk performance
43847: --
43848: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43849:
43850: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43851: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43852:
43846: -- bulk performance
43847: --
43848: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43849:
43850: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43851: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43852:
43853: -- 4955764
43854: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43850: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43851: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43852:
43853: -- 4955764
43854: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43855: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
43856:
43857: -- 4458381 Public Sector Enh
43858:
43886: l_rec_acct_attrs.array_char_value(11) := p_source_32;
43887: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
43888: l_rec_acct_attrs.array_num_value(12) := p_source_55;
43889:
43890: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43891: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43892:
43893: ---------------------------------------------------------------------------------------------------------------
43894: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43887: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
43888: l_rec_acct_attrs.array_num_value(12) := p_source_55;
43889:
43890: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43891: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43892:
43893: ---------------------------------------------------------------------------------------------------------------
43894: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43895: ---------------------------------------------------------------------------------------------------------------
43890: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43891: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43892:
43893: ---------------------------------------------------------------------------------------------------------------
43894: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43895: ---------------------------------------------------------------------------------------------------------------
43896: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43897:
43898: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43892:
43893: ---------------------------------------------------------------------------------------------------------------
43894: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43895: ---------------------------------------------------------------------------------------------------------------
43896: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43897:
43898: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43899: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43900:
43894: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43895: ---------------------------------------------------------------------------------------------------------------
43896: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43897:
43898: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43899: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43900:
43901: IF xla_accounting_cache_pkg.GetValueChar
43902: (p_source_code => 'LEDGER_CATEGORY_CODE'
43895: ---------------------------------------------------------------------------------------------------------------
43896: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43897:
43898: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43899: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43900:
43901: IF xla_accounting_cache_pkg.GetValueChar
43902: (p_source_code => 'LEDGER_CATEGORY_CODE'
43903: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
43906: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
43907: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
43908: )
43909: THEN
43910: xla_ae_lines_pkg.BflowUpgEntry
43911: (p_business_method_code => l_bflow_method_code
43912: ,p_business_class_code => l_bflow_class_code
43913: ,p_balance_type => l_balance_type_code);
43914: ELSE
43946: , x_value_type_code => l_adr_value_type_code
43947: , p_side => 'NA'
43948: );
43949:
43950: xla_ae_lines_pkg.set_ccid(
43951: p_code_combination_id => l_ccid
43952: , p_value_type_code => l_adr_value_type_code
43953: , p_transaction_coa_id => l_adr_transaction_coa_id
43954: , p_accounting_coa_id => l_adr_accounting_coa_id
43982: xla_accounting_err_pkg.build_message
43983: (p_appli_s_name => 'XLA'
43984: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
43985: ,p_token_1 => 'LINE_NUMBER'
43986: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
43987: ,p_token_2 => 'LINE_TYPE_NAME'
43988: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
43989: l_component_type
43990: ,l_component_code
44018: --
44019: --
44020: ------------------------------------------------------------------------------------------------
44021: -- 4219869 Business Flow
44022: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44023: -- Prior Entry. Currently, the following code is always generated.
44024: ------------------------------------------------------------------------------------------------
44025: XLA_AE_LINES_PKG.ValidateCurrentLine;
44026:
44021: -- 4219869 Business Flow
44022: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44023: -- Prior Entry. Currently, the following code is always generated.
44024: ------------------------------------------------------------------------------------------------
44025: XLA_AE_LINES_PKG.ValidateCurrentLine;
44026:
44027: ------------------------------------------------------------------------------------
44028: -- 4219869 Business Flow
44029: -- Populated credit and debit amounts -- Need to generate this within IF
44027: ------------------------------------------------------------------------------------
44028: -- 4219869 Business Flow
44029: -- Populated credit and debit amounts -- Need to generate this within IF
44030: ------------------------------------------------------------------------------------
44031: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44032:
44033: ----------------------------------------------------------------------------------
44034: -- 4219869 Business Flow
44035: -- Update journal entry status -- Need to generate this within IF
44059: -- To allow MPA report to determine if it should generate report process
44060: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44061: ------------------------------------------------------------------------------------------
44062:
44063: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44064: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44065: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44066: -- call ADRs
44067: -- Bug 4922099
44060: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44061: ------------------------------------------------------------------------------------------
44062:
44063: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44064: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44065: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44066: -- call ADRs
44067: -- Bug 4922099
44068: --
44084: , x_value_type_code => l_adr_value_type_code
44085: , p_side => 'NA'
44086: );
44087:
44088: xla_ae_lines_pkg.set_ccid(
44089: p_code_combination_id => l_ccid
44090: , p_value_type_code => l_adr_value_type_code
44091: , p_transaction_coa_id => l_adr_transaction_coa_id
44092: , p_accounting_coa_id => l_adr_accounting_coa_id
44107:
44108: --
44109: -- Update the line information that should be overwritten
44110: --
44111: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44112: p_header_num => 1);
44113: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44114:
44115: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44109: -- Update the line information that should be overwritten
44110: --
44111: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44112: p_header_num => 1);
44113: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44114:
44115: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44116:
44117: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44111: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44112: p_header_num => 1);
44113: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44114:
44115: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44116:
44117: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44118: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44119: END IF;
44114:
44115: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44116:
44117: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44118: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44119: END IF;
44120:
44121: --
44122: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44121: --
44122: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44123: --
44124: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
44125: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
44126: ELSE
44127: ---------------------------------------------------------------------------------------------------
44128: -- 4262811a Switch Sign
44129: ---------------------------------------------------------------------------------------------------
44126: ELSE
44127: ---------------------------------------------------------------------------------------------------
44128: -- 4262811a Switch Sign
44129: ---------------------------------------------------------------------------------------------------
44130: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44131: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44132: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44133: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44134: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44127: ---------------------------------------------------------------------------------------------------
44128: -- 4262811a Switch Sign
44129: ---------------------------------------------------------------------------------------------------
44130: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44131: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44132: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44133: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44134: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44135: -- 5132302
44128: -- 4262811a Switch Sign
44129: ---------------------------------------------------------------------------------------------------
44130: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44131: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44132: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44133: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44134: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44135: -- 5132302
44136: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44129: ---------------------------------------------------------------------------------------------------
44130: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44131: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44132: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44133: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44134: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44135: -- 5132302
44136: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44137: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44130: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44131: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44132: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44133: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44134: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44135: -- 5132302
44136: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44137: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44138:
44132: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44133: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44134: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44135: -- 5132302
44136: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44137: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44138:
44139: END IF;
44140:
44133: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44134: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44135: -- 5132302
44136: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44137: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44138:
44139: END IF;
44140:
44141: -- 4955764
44138:
44139: END IF;
44140:
44141: -- 4955764
44142: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44143: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44144:
44145:
44146: XLA_AE_LINES_PKG.ValidateCurrentLine;
44142: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44143: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44144:
44145:
44146: XLA_AE_LINES_PKG.ValidateCurrentLine;
44147: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44148:
44149: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44150: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44143: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44144:
44145:
44146: XLA_AE_LINES_PKG.ValidateCurrentLine;
44147: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44148:
44149: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44150: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44151: ,p_balance_type_code => l_balance_type_code);
44278: --
44279: -- bulk performance
44280: --
44281: l_balance_type_code VARCHAR2(1);
44282: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
44283: l_log_module VARCHAR2(240);
44284:
44285: --
44286: -- Upgrade strategy
44348: ') = 'N'
44349: THEN
44350:
44351: --
44352: XLA_AE_LINES_PKG.SetNewLine;
44353:
44354: p_balance_type_code := l_balance_type_code;
44355: -- set the flag so later we will know whether the gain loss line needs to be created
44356:
44360:
44361: --
44362: -- bulk performance
44363: --
44364: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
44365: p_header_num => 0); -- 4262811
44366: --
44367: -- set accounting line options
44368: --
44365: p_header_num => 0); -- 4262811
44366: --
44367: -- set accounting line options
44368: --
44369: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
44370: p_natural_side_code => 'C'
44371: , p_gain_or_loss_flag => 'N'
44372: , p_gl_transfer_mode_code => 'S'
44373: , p_acct_entry_type_code => 'A'
44379: --
44380: --
44381: -- set accounting line type info
44382: --
44383: xla_ae_lines_pkg.SetAcctLineType
44384: (p_component_type => l_component_type
44385: ,p_event_type_code => l_event_type_code
44386: ,p_line_definition_owner_code => l_line_definition_owner_code
44387: ,p_line_definition_code => l_line_definition_code
44393: ,p_event_class_code => l_event_class_code);
44394: --
44395: -- set accounting class
44396: --
44397: xla_ae_lines_pkg.SetAcctClass(
44398: p_accounting_class_code => 'BANK_CHG'
44399: , p_ae_header_id => l_ae_header_id
44400: );
44401:
44401:
44402: --
44403: -- set rounding class
44404: --
44405: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44406: 'RECEIVABLE';
44407:
44408: --
44409: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44405: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44406: 'RECEIVABLE';
44407:
44408: --
44409: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44410: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44411: --
44412: -- bulk performance
44413: --
44406: 'RECEIVABLE';
44407:
44408: --
44409: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44410: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44411: --
44412: -- bulk performance
44413: --
44414: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44410: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44411: --
44412: -- bulk performance
44413: --
44414: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44415:
44416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44417: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44418:
44412: -- bulk performance
44413: --
44414: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44415:
44416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44417: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44418:
44419: -- 4955764
44420: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44417: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44418:
44419: -- 4955764
44420: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44421: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
44422:
44423: -- 4458381 Public Sector Enh
44424:
44444: l_rec_acct_attrs.array_char_value(7) := p_source_28;
44445: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
44446: l_rec_acct_attrs.array_num_value(8) := p_source_29;
44447:
44448: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44449: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44450:
44451: ---------------------------------------------------------------------------------------------------------------
44452: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44445: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
44446: l_rec_acct_attrs.array_num_value(8) := p_source_29;
44447:
44448: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44449: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44450:
44451: ---------------------------------------------------------------------------------------------------------------
44452: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44453: ---------------------------------------------------------------------------------------------------------------
44448: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44449: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44450:
44451: ---------------------------------------------------------------------------------------------------------------
44452: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44453: ---------------------------------------------------------------------------------------------------------------
44454: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44455:
44456: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44450:
44451: ---------------------------------------------------------------------------------------------------------------
44452: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44453: ---------------------------------------------------------------------------------------------------------------
44454: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44455:
44456: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44457: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44458:
44452: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44453: ---------------------------------------------------------------------------------------------------------------
44454: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44455:
44456: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44457: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44458:
44459: IF xla_accounting_cache_pkg.GetValueChar
44460: (p_source_code => 'LEDGER_CATEGORY_CODE'
44453: ---------------------------------------------------------------------------------------------------------------
44454: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44455:
44456: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44457: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44458:
44459: IF xla_accounting_cache_pkg.GetValueChar
44460: (p_source_code => 'LEDGER_CATEGORY_CODE'
44461: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
44464: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
44465: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
44466: )
44467: THEN
44468: xla_ae_lines_pkg.BflowUpgEntry
44469: (p_business_method_code => l_bflow_method_code
44470: ,p_business_class_code => l_bflow_class_code
44471: ,p_balance_type => l_balance_type_code);
44472: ELSE
44504: , x_value_type_code => l_adr_value_type_code
44505: , p_side => 'NA'
44506: );
44507:
44508: xla_ae_lines_pkg.set_ccid(
44509: p_code_combination_id => l_ccid
44510: , p_value_type_code => l_adr_value_type_code
44511: , p_transaction_coa_id => l_adr_transaction_coa_id
44512: , p_accounting_coa_id => l_adr_accounting_coa_id
44540: xla_accounting_err_pkg.build_message
44541: (p_appli_s_name => 'XLA'
44542: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
44543: ,p_token_1 => 'LINE_NUMBER'
44544: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
44545: ,p_token_2 => 'LINE_TYPE_NAME'
44546: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
44547: l_component_type
44548: ,l_component_code
44576: --
44577: --
44578: ------------------------------------------------------------------------------------------------
44579: -- 4219869 Business Flow
44580: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44581: -- Prior Entry. Currently, the following code is always generated.
44582: ------------------------------------------------------------------------------------------------
44583: XLA_AE_LINES_PKG.ValidateCurrentLine;
44584:
44579: -- 4219869 Business Flow
44580: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44581: -- Prior Entry. Currently, the following code is always generated.
44582: ------------------------------------------------------------------------------------------------
44583: XLA_AE_LINES_PKG.ValidateCurrentLine;
44584:
44585: ------------------------------------------------------------------------------------
44586: -- 4219869 Business Flow
44587: -- Populated credit and debit amounts -- Need to generate this within IF
44585: ------------------------------------------------------------------------------------
44586: -- 4219869 Business Flow
44587: -- Populated credit and debit amounts -- Need to generate this within IF
44588: ------------------------------------------------------------------------------------
44589: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44590:
44591: ----------------------------------------------------------------------------------
44592: -- 4219869 Business Flow
44593: -- Update journal entry status -- Need to generate this within IF
44617: -- To allow MPA report to determine if it should generate report process
44618: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44619: ------------------------------------------------------------------------------------------
44620:
44621: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44622: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44623: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44624: -- call ADRs
44625: -- Bug 4922099
44618: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44619: ------------------------------------------------------------------------------------------
44620:
44621: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44622: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44623: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44624: -- call ADRs
44625: -- Bug 4922099
44626: --
44642: , x_value_type_code => l_adr_value_type_code
44643: , p_side => 'NA'
44644: );
44645:
44646: xla_ae_lines_pkg.set_ccid(
44647: p_code_combination_id => l_ccid
44648: , p_value_type_code => l_adr_value_type_code
44649: , p_transaction_coa_id => l_adr_transaction_coa_id
44650: , p_accounting_coa_id => l_adr_accounting_coa_id
44665:
44666: --
44667: -- Update the line information that should be overwritten
44668: --
44669: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44670: p_header_num => 1);
44671: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44672:
44673: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44667: -- Update the line information that should be overwritten
44668: --
44669: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44670: p_header_num => 1);
44671: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44672:
44673: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44674:
44675: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44669: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44670: p_header_num => 1);
44671: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44672:
44673: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44674:
44675: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44676: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44677: END IF;
44672:
44673: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44674:
44675: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44676: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44677: END IF;
44678:
44679: --
44680: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44679: --
44680: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44681: --
44682: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
44683: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
44684: ELSE
44685: ---------------------------------------------------------------------------------------------------
44686: -- 4262811a Switch Sign
44687: ---------------------------------------------------------------------------------------------------
44684: ELSE
44685: ---------------------------------------------------------------------------------------------------
44686: -- 4262811a Switch Sign
44687: ---------------------------------------------------------------------------------------------------
44688: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44689: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44690: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44691: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44692: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44685: ---------------------------------------------------------------------------------------------------
44686: -- 4262811a Switch Sign
44687: ---------------------------------------------------------------------------------------------------
44688: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44689: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44690: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44691: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44692: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44693: -- 5132302
44686: -- 4262811a Switch Sign
44687: ---------------------------------------------------------------------------------------------------
44688: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44689: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44690: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44691: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44692: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44693: -- 5132302
44694: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44687: ---------------------------------------------------------------------------------------------------
44688: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44689: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44690: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44691: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44692: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44693: -- 5132302
44694: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44695: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44688: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44689: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44690: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44691: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44692: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44693: -- 5132302
44694: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44695: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44696:
44690: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44691: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44692: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44693: -- 5132302
44694: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44695: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44696:
44697: END IF;
44698:
44691: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44692: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44693: -- 5132302
44694: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44695: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44696:
44697: END IF;
44698:
44699: -- 4955764
44696:
44697: END IF;
44698:
44699: -- 4955764
44700: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44701: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44702:
44703:
44704: XLA_AE_LINES_PKG.ValidateCurrentLine;
44700: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44701: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44702:
44703:
44704: XLA_AE_LINES_PKG.ValidateCurrentLine;
44705: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44706:
44707: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44708: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44701: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44702:
44703:
44704: XLA_AE_LINES_PKG.ValidateCurrentLine;
44705: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44706:
44707: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44708: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44709: ,p_balance_type_code => l_balance_type_code);
44836: --
44837: -- bulk performance
44838: --
44839: l_balance_type_code VARCHAR2(1);
44840: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
44841: l_log_module VARCHAR2(240);
44842:
44843: --
44844: -- Upgrade strategy
44906: ') = 'N'
44907: THEN
44908:
44909: --
44910: XLA_AE_LINES_PKG.SetNewLine;
44911:
44912: p_balance_type_code := l_balance_type_code;
44913: -- set the flag so later we will know whether the gain loss line needs to be created
44914:
44918:
44919: --
44920: -- bulk performance
44921: --
44922: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
44923: p_header_num => 0); -- 4262811
44924: --
44925: -- set accounting line options
44926: --
44923: p_header_num => 0); -- 4262811
44924: --
44925: -- set accounting line options
44926: --
44927: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
44928: p_natural_side_code => 'C'
44929: , p_gain_or_loss_flag => 'N'
44930: , p_gl_transfer_mode_code => 'S'
44931: , p_acct_entry_type_code => 'A'
44937: --
44938: --
44939: -- set accounting line type info
44940: --
44941: xla_ae_lines_pkg.SetAcctLineType
44942: (p_component_type => l_component_type
44943: ,p_event_type_code => l_event_type_code
44944: ,p_line_definition_owner_code => l_line_definition_owner_code
44945: ,p_line_definition_code => l_line_definition_code
44951: ,p_event_class_code => l_event_class_code);
44952: --
44953: -- set accounting class
44954: --
44955: xla_ae_lines_pkg.SetAcctClass(
44956: p_accounting_class_code => 'CASH'
44957: , p_ae_header_id => l_ae_header_id
44958: );
44959:
44959:
44960: --
44961: -- set rounding class
44962: --
44963: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44964: 'RECEIVABLE';
44965:
44966: --
44967: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44963: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44964: 'RECEIVABLE';
44965:
44966: --
44967: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44968: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44969: --
44970: -- bulk performance
44971: --
44964: 'RECEIVABLE';
44965:
44966: --
44967: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44968: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44969: --
44970: -- bulk performance
44971: --
44972: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44968: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44969: --
44970: -- bulk performance
44971: --
44972: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44973:
44974: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44975: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44976:
44970: -- bulk performance
44971: --
44972: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44973:
44974: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44975: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44976:
44977: -- 4955764
44978: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44974: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44975: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44976:
44977: -- 4955764
44978: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44979: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
44980:
44981: -- 4458381 Public Sector Enh
44982:
45002: l_rec_acct_attrs.array_char_value(7) := p_source_28;
45003: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
45004: l_rec_acct_attrs.array_num_value(8) := p_source_29;
45005:
45006: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45007: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45008:
45009: ---------------------------------------------------------------------------------------------------------------
45010: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45003: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
45004: l_rec_acct_attrs.array_num_value(8) := p_source_29;
45005:
45006: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45007: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45008:
45009: ---------------------------------------------------------------------------------------------------------------
45010: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45011: ---------------------------------------------------------------------------------------------------------------
45006: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45007: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45008:
45009: ---------------------------------------------------------------------------------------------------------------
45010: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45011: ---------------------------------------------------------------------------------------------------------------
45012: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45013:
45014: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45008:
45009: ---------------------------------------------------------------------------------------------------------------
45010: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45011: ---------------------------------------------------------------------------------------------------------------
45012: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45013:
45014: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45015: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45016:
45010: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45011: ---------------------------------------------------------------------------------------------------------------
45012: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45013:
45014: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45015: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45016:
45017: IF xla_accounting_cache_pkg.GetValueChar
45018: (p_source_code => 'LEDGER_CATEGORY_CODE'
45011: ---------------------------------------------------------------------------------------------------------------
45012: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45013:
45014: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45015: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45016:
45017: IF xla_accounting_cache_pkg.GetValueChar
45018: (p_source_code => 'LEDGER_CATEGORY_CODE'
45019: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
45022: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
45023: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
45024: )
45025: THEN
45026: xla_ae_lines_pkg.BflowUpgEntry
45027: (p_business_method_code => l_bflow_method_code
45028: ,p_business_class_code => l_bflow_class_code
45029: ,p_balance_type => l_balance_type_code);
45030: ELSE
45062: , x_value_type_code => l_adr_value_type_code
45063: , p_side => 'NA'
45064: );
45065:
45066: xla_ae_lines_pkg.set_ccid(
45067: p_code_combination_id => l_ccid
45068: , p_value_type_code => l_adr_value_type_code
45069: , p_transaction_coa_id => l_adr_transaction_coa_id
45070: , p_accounting_coa_id => l_adr_accounting_coa_id
45098: xla_accounting_err_pkg.build_message
45099: (p_appli_s_name => 'XLA'
45100: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
45101: ,p_token_1 => 'LINE_NUMBER'
45102: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
45103: ,p_token_2 => 'LINE_TYPE_NAME'
45104: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
45105: l_component_type
45106: ,l_component_code
45134: --
45135: --
45136: ------------------------------------------------------------------------------------------------
45137: -- 4219869 Business Flow
45138: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45139: -- Prior Entry. Currently, the following code is always generated.
45140: ------------------------------------------------------------------------------------------------
45141: XLA_AE_LINES_PKG.ValidateCurrentLine;
45142:
45137: -- 4219869 Business Flow
45138: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45139: -- Prior Entry. Currently, the following code is always generated.
45140: ------------------------------------------------------------------------------------------------
45141: XLA_AE_LINES_PKG.ValidateCurrentLine;
45142:
45143: ------------------------------------------------------------------------------------
45144: -- 4219869 Business Flow
45145: -- Populated credit and debit amounts -- Need to generate this within IF
45143: ------------------------------------------------------------------------------------
45144: -- 4219869 Business Flow
45145: -- Populated credit and debit amounts -- Need to generate this within IF
45146: ------------------------------------------------------------------------------------
45147: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45148:
45149: ----------------------------------------------------------------------------------
45150: -- 4219869 Business Flow
45151: -- Update journal entry status -- Need to generate this within IF
45175: -- To allow MPA report to determine if it should generate report process
45176: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45177: ------------------------------------------------------------------------------------------
45178:
45179: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45180: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45181: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45182: -- call ADRs
45183: -- Bug 4922099
45176: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45177: ------------------------------------------------------------------------------------------
45178:
45179: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45180: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45181: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45182: -- call ADRs
45183: -- Bug 4922099
45184: --
45200: , x_value_type_code => l_adr_value_type_code
45201: , p_side => 'NA'
45202: );
45203:
45204: xla_ae_lines_pkg.set_ccid(
45205: p_code_combination_id => l_ccid
45206: , p_value_type_code => l_adr_value_type_code
45207: , p_transaction_coa_id => l_adr_transaction_coa_id
45208: , p_accounting_coa_id => l_adr_accounting_coa_id
45223:
45224: --
45225: -- Update the line information that should be overwritten
45226: --
45227: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45228: p_header_num => 1);
45229: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45230:
45231: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45225: -- Update the line information that should be overwritten
45226: --
45227: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45228: p_header_num => 1);
45229: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45230:
45231: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45232:
45233: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45227: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45228: p_header_num => 1);
45229: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45230:
45231: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45232:
45233: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45234: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45235: END IF;
45230:
45231: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45232:
45233: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45234: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45235: END IF;
45236:
45237: --
45238: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45237: --
45238: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45239: --
45240: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
45241: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
45242: ELSE
45243: ---------------------------------------------------------------------------------------------------
45244: -- 4262811a Switch Sign
45245: ---------------------------------------------------------------------------------------------------
45242: ELSE
45243: ---------------------------------------------------------------------------------------------------
45244: -- 4262811a Switch Sign
45245: ---------------------------------------------------------------------------------------------------
45246: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45243: ---------------------------------------------------------------------------------------------------
45244: -- 4262811a Switch Sign
45245: ---------------------------------------------------------------------------------------------------
45246: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45251: -- 5132302
45244: -- 4262811a Switch Sign
45245: ---------------------------------------------------------------------------------------------------
45246: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45251: -- 5132302
45252: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45245: ---------------------------------------------------------------------------------------------------
45246: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45251: -- 5132302
45252: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45246: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45247: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45251: -- 5132302
45252: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45254:
45248: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45251: -- 5132302
45252: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45254:
45255: END IF;
45256:
45249: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45250: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45251: -- 5132302
45252: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45253: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45254:
45255: END IF;
45256:
45257: -- 4955764
45254:
45255: END IF;
45256:
45257: -- 4955764
45258: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45259: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45260:
45261:
45262: XLA_AE_LINES_PKG.ValidateCurrentLine;
45258: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45259: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45260:
45261:
45262: XLA_AE_LINES_PKG.ValidateCurrentLine;
45263: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45264:
45265: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45266: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45259: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45260:
45261:
45262: XLA_AE_LINES_PKG.ValidateCurrentLine;
45263: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45264:
45265: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45266: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45267: ,p_balance_type_code => l_balance_type_code);
45394: --
45395: -- bulk performance
45396: --
45397: l_balance_type_code VARCHAR2(1);
45398: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
45399: l_log_module VARCHAR2(240);
45400:
45401: --
45402: -- Upgrade strategy
45464: ') = 'N'
45465: THEN
45466:
45467: --
45468: XLA_AE_LINES_PKG.SetNewLine;
45469:
45470: p_balance_type_code := l_balance_type_code;
45471: -- set the flag so later we will know whether the gain loss line needs to be created
45472:
45476:
45477: --
45478: -- bulk performance
45479: --
45480: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
45481: p_header_num => 0); -- 4262811
45482: --
45483: -- set accounting line options
45484: --
45481: p_header_num => 0); -- 4262811
45482: --
45483: -- set accounting line options
45484: --
45485: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
45486: p_natural_side_code => 'C'
45487: , p_gain_or_loss_flag => 'N'
45488: , p_gl_transfer_mode_code => 'S'
45489: , p_acct_entry_type_code => 'A'
45495: --
45496: --
45497: -- set accounting line type info
45498: --
45499: xla_ae_lines_pkg.SetAcctLineType
45500: (p_component_type => l_component_type
45501: ,p_event_type_code => l_event_type_code
45502: ,p_line_definition_owner_code => l_line_definition_owner_code
45503: ,p_line_definition_code => l_line_definition_code
45509: ,p_event_class_code => l_event_class_code);
45510: --
45511: -- set accounting class
45512: --
45513: xla_ae_lines_pkg.SetAcctClass(
45514: p_accounting_class_code => 'CONFIRMATION'
45515: , p_ae_header_id => l_ae_header_id
45516: );
45517:
45517:
45518: --
45519: -- set rounding class
45520: --
45521: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45522: 'RECEIVABLE';
45523:
45524: --
45525: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45521: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45522: 'RECEIVABLE';
45523:
45524: --
45525: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45526: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45527: --
45528: -- bulk performance
45529: --
45522: 'RECEIVABLE';
45523:
45524: --
45525: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45526: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45527: --
45528: -- bulk performance
45529: --
45530: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45526: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45527: --
45528: -- bulk performance
45529: --
45530: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45531:
45532: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45533: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45534:
45528: -- bulk performance
45529: --
45530: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45531:
45532: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45533: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45534:
45535: -- 4955764
45536: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45532: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45533: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45534:
45535: -- 4955764
45536: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45537: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
45538:
45539: -- 4458381 Public Sector Enh
45540:
45560: l_rec_acct_attrs.array_char_value(7) := p_source_28;
45561: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
45562: l_rec_acct_attrs.array_num_value(8) := p_source_29;
45563:
45564: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45565: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45566:
45567: ---------------------------------------------------------------------------------------------------------------
45568: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45561: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
45562: l_rec_acct_attrs.array_num_value(8) := p_source_29;
45563:
45564: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45565: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45566:
45567: ---------------------------------------------------------------------------------------------------------------
45568: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45569: ---------------------------------------------------------------------------------------------------------------
45564: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45565: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45566:
45567: ---------------------------------------------------------------------------------------------------------------
45568: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45569: ---------------------------------------------------------------------------------------------------------------
45570: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45571:
45572: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45566:
45567: ---------------------------------------------------------------------------------------------------------------
45568: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45569: ---------------------------------------------------------------------------------------------------------------
45570: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45571:
45572: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45573: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45574:
45568: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45569: ---------------------------------------------------------------------------------------------------------------
45570: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45571:
45572: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45573: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45574:
45575: IF xla_accounting_cache_pkg.GetValueChar
45576: (p_source_code => 'LEDGER_CATEGORY_CODE'
45569: ---------------------------------------------------------------------------------------------------------------
45570: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45571:
45572: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45573: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45574:
45575: IF xla_accounting_cache_pkg.GetValueChar
45576: (p_source_code => 'LEDGER_CATEGORY_CODE'
45577: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
45580: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
45581: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
45582: )
45583: THEN
45584: xla_ae_lines_pkg.BflowUpgEntry
45585: (p_business_method_code => l_bflow_method_code
45586: ,p_business_class_code => l_bflow_class_code
45587: ,p_balance_type => l_balance_type_code);
45588: ELSE
45620: , x_value_type_code => l_adr_value_type_code
45621: , p_side => 'NA'
45622: );
45623:
45624: xla_ae_lines_pkg.set_ccid(
45625: p_code_combination_id => l_ccid
45626: , p_value_type_code => l_adr_value_type_code
45627: , p_transaction_coa_id => l_adr_transaction_coa_id
45628: , p_accounting_coa_id => l_adr_accounting_coa_id
45656: xla_accounting_err_pkg.build_message
45657: (p_appli_s_name => 'XLA'
45658: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
45659: ,p_token_1 => 'LINE_NUMBER'
45660: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
45661: ,p_token_2 => 'LINE_TYPE_NAME'
45662: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
45663: l_component_type
45664: ,l_component_code
45692: --
45693: --
45694: ------------------------------------------------------------------------------------------------
45695: -- 4219869 Business Flow
45696: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45697: -- Prior Entry. Currently, the following code is always generated.
45698: ------------------------------------------------------------------------------------------------
45699: XLA_AE_LINES_PKG.ValidateCurrentLine;
45700:
45695: -- 4219869 Business Flow
45696: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45697: -- Prior Entry. Currently, the following code is always generated.
45698: ------------------------------------------------------------------------------------------------
45699: XLA_AE_LINES_PKG.ValidateCurrentLine;
45700:
45701: ------------------------------------------------------------------------------------
45702: -- 4219869 Business Flow
45703: -- Populated credit and debit amounts -- Need to generate this within IF
45701: ------------------------------------------------------------------------------------
45702: -- 4219869 Business Flow
45703: -- Populated credit and debit amounts -- Need to generate this within IF
45704: ------------------------------------------------------------------------------------
45705: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45706:
45707: ----------------------------------------------------------------------------------
45708: -- 4219869 Business Flow
45709: -- Update journal entry status -- Need to generate this within IF
45733: -- To allow MPA report to determine if it should generate report process
45734: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45735: ------------------------------------------------------------------------------------------
45736:
45737: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45738: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45739: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45740: -- call ADRs
45741: -- Bug 4922099
45734: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45735: ------------------------------------------------------------------------------------------
45736:
45737: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45738: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45739: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45740: -- call ADRs
45741: -- Bug 4922099
45742: --
45758: , x_value_type_code => l_adr_value_type_code
45759: , p_side => 'NA'
45760: );
45761:
45762: xla_ae_lines_pkg.set_ccid(
45763: p_code_combination_id => l_ccid
45764: , p_value_type_code => l_adr_value_type_code
45765: , p_transaction_coa_id => l_adr_transaction_coa_id
45766: , p_accounting_coa_id => l_adr_accounting_coa_id
45781:
45782: --
45783: -- Update the line information that should be overwritten
45784: --
45785: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45786: p_header_num => 1);
45787: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45788:
45789: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45783: -- Update the line information that should be overwritten
45784: --
45785: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45786: p_header_num => 1);
45787: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45788:
45789: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45790:
45791: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45785: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45786: p_header_num => 1);
45787: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45788:
45789: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45790:
45791: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45792: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45793: END IF;
45788:
45789: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45790:
45791: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45792: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45793: END IF;
45794:
45795: --
45796: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45795: --
45796: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45797: --
45798: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
45799: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
45800: ELSE
45801: ---------------------------------------------------------------------------------------------------
45802: -- 4262811a Switch Sign
45803: ---------------------------------------------------------------------------------------------------
45800: ELSE
45801: ---------------------------------------------------------------------------------------------------
45802: -- 4262811a Switch Sign
45803: ---------------------------------------------------------------------------------------------------
45804: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45801: ---------------------------------------------------------------------------------------------------
45802: -- 4262811a Switch Sign
45803: ---------------------------------------------------------------------------------------------------
45804: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45809: -- 5132302
45802: -- 4262811a Switch Sign
45803: ---------------------------------------------------------------------------------------------------
45804: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45809: -- 5132302
45810: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45803: ---------------------------------------------------------------------------------------------------
45804: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45809: -- 5132302
45810: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45811: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45804: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45805: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45809: -- 5132302
45810: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45811: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45812:
45806: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45809: -- 5132302
45810: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45811: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45812:
45813: END IF;
45814:
45807: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45808: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45809: -- 5132302
45810: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45811: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45812:
45813: END IF;
45814:
45815: -- 4955764
45812:
45813: END IF;
45814:
45815: -- 4955764
45816: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45817: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45818:
45819:
45820: XLA_AE_LINES_PKG.ValidateCurrentLine;
45816: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45817: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45818:
45819:
45820: XLA_AE_LINES_PKG.ValidateCurrentLine;
45821: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45822:
45823: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45824: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45817: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45818:
45819:
45820: XLA_AE_LINES_PKG.ValidateCurrentLine;
45821: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45822:
45823: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45824: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45825: ,p_balance_type_code => l_balance_type_code);
45952: --
45953: -- bulk performance
45954: --
45955: l_balance_type_code VARCHAR2(1);
45956: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
45957: l_log_module VARCHAR2(240);
45958:
45959: --
45960: -- Upgrade strategy
46022: ') = 'N'
46023: THEN
46024:
46025: --
46026: XLA_AE_LINES_PKG.SetNewLine;
46027:
46028: p_balance_type_code := l_balance_type_code;
46029: -- set the flag so later we will know whether the gain loss line needs to be created
46030:
46034:
46035: --
46036: -- bulk performance
46037: --
46038: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
46039: p_header_num => 0); -- 4262811
46040: --
46041: -- set accounting line options
46042: --
46039: p_header_num => 0); -- 4262811
46040: --
46041: -- set accounting line options
46042: --
46043: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
46044: p_natural_side_code => 'C'
46045: , p_gain_or_loss_flag => 'N'
46046: , p_gl_transfer_mode_code => 'S'
46047: , p_acct_entry_type_code => 'A'
46053: --
46054: --
46055: -- set accounting line type info
46056: --
46057: xla_ae_lines_pkg.SetAcctLineType
46058: (p_component_type => l_component_type
46059: ,p_event_type_code => l_event_type_code
46060: ,p_line_definition_owner_code => l_line_definition_owner_code
46061: ,p_line_definition_code => l_line_definition_code
46067: ,p_event_class_code => l_event_class_code);
46068: --
46069: -- set accounting class
46070: --
46071: xla_ae_lines_pkg.SetAcctClass(
46072: p_accounting_class_code => 'SHORT_TERM_DEBT'
46073: , p_ae_header_id => l_ae_header_id
46074: );
46075:
46075:
46076: --
46077: -- set rounding class
46078: --
46079: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46080: 'RECEIVABLE';
46081:
46082: --
46083: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46079: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46080: 'RECEIVABLE';
46081:
46082: --
46083: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46084: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46085: --
46086: -- bulk performance
46087: --
46080: 'RECEIVABLE';
46081:
46082: --
46083: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46084: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46085: --
46086: -- bulk performance
46087: --
46088: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46084: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46085: --
46086: -- bulk performance
46087: --
46088: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46089:
46090: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46091: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46092:
46086: -- bulk performance
46087: --
46088: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46089:
46090: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46091: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46092:
46093: -- 4955764
46094: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46090: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46091: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46092:
46093: -- 4955764
46094: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46095: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
46096:
46097: -- 4458381 Public Sector Enh
46098:
46118: l_rec_acct_attrs.array_char_value(7) := p_source_28;
46119: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
46120: l_rec_acct_attrs.array_num_value(8) := p_source_29;
46121:
46122: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46123: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46124:
46125: ---------------------------------------------------------------------------------------------------------------
46126: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46119: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
46120: l_rec_acct_attrs.array_num_value(8) := p_source_29;
46121:
46122: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46123: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46124:
46125: ---------------------------------------------------------------------------------------------------------------
46126: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46127: ---------------------------------------------------------------------------------------------------------------
46122: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46123: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46124:
46125: ---------------------------------------------------------------------------------------------------------------
46126: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46127: ---------------------------------------------------------------------------------------------------------------
46128: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46129:
46130: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46124:
46125: ---------------------------------------------------------------------------------------------------------------
46126: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46127: ---------------------------------------------------------------------------------------------------------------
46128: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46129:
46130: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46131: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46132:
46126: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46127: ---------------------------------------------------------------------------------------------------------------
46128: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46129:
46130: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46131: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46132:
46133: IF xla_accounting_cache_pkg.GetValueChar
46134: (p_source_code => 'LEDGER_CATEGORY_CODE'
46127: ---------------------------------------------------------------------------------------------------------------
46128: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46129:
46130: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46131: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46132:
46133: IF xla_accounting_cache_pkg.GetValueChar
46134: (p_source_code => 'LEDGER_CATEGORY_CODE'
46135: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
46138: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
46139: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
46140: )
46141: THEN
46142: xla_ae_lines_pkg.BflowUpgEntry
46143: (p_business_method_code => l_bflow_method_code
46144: ,p_business_class_code => l_bflow_class_code
46145: ,p_balance_type => l_balance_type_code);
46146: ELSE
46178: , x_value_type_code => l_adr_value_type_code
46179: , p_side => 'NA'
46180: );
46181:
46182: xla_ae_lines_pkg.set_ccid(
46183: p_code_combination_id => l_ccid
46184: , p_value_type_code => l_adr_value_type_code
46185: , p_transaction_coa_id => l_adr_transaction_coa_id
46186: , p_accounting_coa_id => l_adr_accounting_coa_id
46214: xla_accounting_err_pkg.build_message
46215: (p_appli_s_name => 'XLA'
46216: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
46217: ,p_token_1 => 'LINE_NUMBER'
46218: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
46219: ,p_token_2 => 'LINE_TYPE_NAME'
46220: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
46221: l_component_type
46222: ,l_component_code
46250: --
46251: --
46252: ------------------------------------------------------------------------------------------------
46253: -- 4219869 Business Flow
46254: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46255: -- Prior Entry. Currently, the following code is always generated.
46256: ------------------------------------------------------------------------------------------------
46257: XLA_AE_LINES_PKG.ValidateCurrentLine;
46258:
46253: -- 4219869 Business Flow
46254: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46255: -- Prior Entry. Currently, the following code is always generated.
46256: ------------------------------------------------------------------------------------------------
46257: XLA_AE_LINES_PKG.ValidateCurrentLine;
46258:
46259: ------------------------------------------------------------------------------------
46260: -- 4219869 Business Flow
46261: -- Populated credit and debit amounts -- Need to generate this within IF
46259: ------------------------------------------------------------------------------------
46260: -- 4219869 Business Flow
46261: -- Populated credit and debit amounts -- Need to generate this within IF
46262: ------------------------------------------------------------------------------------
46263: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46264:
46265: ----------------------------------------------------------------------------------
46266: -- 4219869 Business Flow
46267: -- Update journal entry status -- Need to generate this within IF
46291: -- To allow MPA report to determine if it should generate report process
46292: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46293: ------------------------------------------------------------------------------------------
46294:
46295: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46296: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46297: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46298: -- call ADRs
46299: -- Bug 4922099
46292: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46293: ------------------------------------------------------------------------------------------
46294:
46295: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46296: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46297: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46298: -- call ADRs
46299: -- Bug 4922099
46300: --
46316: , x_value_type_code => l_adr_value_type_code
46317: , p_side => 'NA'
46318: );
46319:
46320: xla_ae_lines_pkg.set_ccid(
46321: p_code_combination_id => l_ccid
46322: , p_value_type_code => l_adr_value_type_code
46323: , p_transaction_coa_id => l_adr_transaction_coa_id
46324: , p_accounting_coa_id => l_adr_accounting_coa_id
46339:
46340: --
46341: -- Update the line information that should be overwritten
46342: --
46343: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46344: p_header_num => 1);
46345: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46346:
46347: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46341: -- Update the line information that should be overwritten
46342: --
46343: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46344: p_header_num => 1);
46345: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46346:
46347: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46348:
46349: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46343: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46344: p_header_num => 1);
46345: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46346:
46347: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46348:
46349: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46350: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46351: END IF;
46346:
46347: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46348:
46349: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46350: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46351: END IF;
46352:
46353: --
46354: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46353: --
46354: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46355: --
46356: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
46357: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
46358: ELSE
46359: ---------------------------------------------------------------------------------------------------
46360: -- 4262811a Switch Sign
46361: ---------------------------------------------------------------------------------------------------
46358: ELSE
46359: ---------------------------------------------------------------------------------------------------
46360: -- 4262811a Switch Sign
46361: ---------------------------------------------------------------------------------------------------
46362: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46363: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46364: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46365: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46366: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46359: ---------------------------------------------------------------------------------------------------
46360: -- 4262811a Switch Sign
46361: ---------------------------------------------------------------------------------------------------
46362: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46363: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46364: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46365: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46366: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46367: -- 5132302
46360: -- 4262811a Switch Sign
46361: ---------------------------------------------------------------------------------------------------
46362: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46363: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46364: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46365: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46366: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46367: -- 5132302
46368: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46361: ---------------------------------------------------------------------------------------------------
46362: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46363: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46364: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46365: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46366: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46367: -- 5132302
46368: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46369: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46362: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46363: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46364: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46365: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46366: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46367: -- 5132302
46368: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46369: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46370:
46364: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46365: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46366: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46367: -- 5132302
46368: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46369: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46370:
46371: END IF;
46372:
46365: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46366: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46367: -- 5132302
46368: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46369: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46370:
46371: END IF;
46372:
46373: -- 4955764
46370:
46371: END IF;
46372:
46373: -- 4955764
46374: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46375: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46376:
46377:
46378: XLA_AE_LINES_PKG.ValidateCurrentLine;
46374: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46375: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46376:
46377:
46378: XLA_AE_LINES_PKG.ValidateCurrentLine;
46379: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46380:
46381: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46382: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46375: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46376:
46377:
46378: XLA_AE_LINES_PKG.ValidateCurrentLine;
46379: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46380:
46381: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46382: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46383: ,p_balance_type_code => l_balance_type_code);
46510: --
46511: -- bulk performance
46512: --
46513: l_balance_type_code VARCHAR2(1);
46514: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
46515: l_log_module VARCHAR2(240);
46516:
46517: --
46518: -- Upgrade strategy
46580: ') = 'N'
46581: THEN
46582:
46583: --
46584: XLA_AE_LINES_PKG.SetNewLine;
46585:
46586: p_balance_type_code := l_balance_type_code;
46587: -- set the flag so later we will know whether the gain loss line needs to be created
46588:
46592:
46593: --
46594: -- bulk performance
46595: --
46596: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
46597: p_header_num => 0); -- 4262811
46598: --
46599: -- set accounting line options
46600: --
46597: p_header_num => 0); -- 4262811
46598: --
46599: -- set accounting line options
46600: --
46601: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
46602: p_natural_side_code => 'C'
46603: , p_gain_or_loss_flag => 'N'
46604: , p_gl_transfer_mode_code => 'S'
46605: , p_acct_entry_type_code => 'A'
46611: --
46612: --
46613: -- set accounting line type info
46614: --
46615: xla_ae_lines_pkg.SetAcctLineType
46616: (p_component_type => l_component_type
46617: ,p_event_type_code => l_event_type_code
46618: ,p_line_definition_owner_code => l_line_definition_owner_code
46619: ,p_line_definition_code => l_line_definition_code
46625: ,p_event_class_code => l_event_class_code);
46626: --
46627: -- set accounting class
46628: --
46629: xla_ae_lines_pkg.SetAcctClass(
46630: p_accounting_class_code => 'FACTOR'
46631: , p_ae_header_id => l_ae_header_id
46632: );
46633:
46633:
46634: --
46635: -- set rounding class
46636: --
46637: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46638: 'RECEIVABLE';
46639:
46640: --
46641: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46637: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46638: 'RECEIVABLE';
46639:
46640: --
46641: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46642: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46643: --
46644: -- bulk performance
46645: --
46638: 'RECEIVABLE';
46639:
46640: --
46641: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46642: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46643: --
46644: -- bulk performance
46645: --
46646: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46642: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46643: --
46644: -- bulk performance
46645: --
46646: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46647:
46648: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46649: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46650:
46644: -- bulk performance
46645: --
46646: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46647:
46648: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46649: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46650:
46651: -- 4955764
46652: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46648: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46649: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46650:
46651: -- 4955764
46652: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46653: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
46654:
46655: -- 4458381 Public Sector Enh
46656:
46676: l_rec_acct_attrs.array_char_value(7) := p_source_28;
46677: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
46678: l_rec_acct_attrs.array_num_value(8) := p_source_29;
46679:
46680: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46681: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46682:
46683: ---------------------------------------------------------------------------------------------------------------
46684: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46677: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
46678: l_rec_acct_attrs.array_num_value(8) := p_source_29;
46679:
46680: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46681: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46682:
46683: ---------------------------------------------------------------------------------------------------------------
46684: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46685: ---------------------------------------------------------------------------------------------------------------
46680: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46681: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46682:
46683: ---------------------------------------------------------------------------------------------------------------
46684: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46685: ---------------------------------------------------------------------------------------------------------------
46686: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46687:
46688: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46682:
46683: ---------------------------------------------------------------------------------------------------------------
46684: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46685: ---------------------------------------------------------------------------------------------------------------
46686: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46687:
46688: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46689: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46690:
46684: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46685: ---------------------------------------------------------------------------------------------------------------
46686: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46687:
46688: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46689: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46690:
46691: IF xla_accounting_cache_pkg.GetValueChar
46692: (p_source_code => 'LEDGER_CATEGORY_CODE'
46685: ---------------------------------------------------------------------------------------------------------------
46686: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46687:
46688: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46689: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46690:
46691: IF xla_accounting_cache_pkg.GetValueChar
46692: (p_source_code => 'LEDGER_CATEGORY_CODE'
46693: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
46696: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
46697: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
46698: )
46699: THEN
46700: xla_ae_lines_pkg.BflowUpgEntry
46701: (p_business_method_code => l_bflow_method_code
46702: ,p_business_class_code => l_bflow_class_code
46703: ,p_balance_type => l_balance_type_code);
46704: ELSE
46736: , x_value_type_code => l_adr_value_type_code
46737: , p_side => 'NA'
46738: );
46739:
46740: xla_ae_lines_pkg.set_ccid(
46741: p_code_combination_id => l_ccid
46742: , p_value_type_code => l_adr_value_type_code
46743: , p_transaction_coa_id => l_adr_transaction_coa_id
46744: , p_accounting_coa_id => l_adr_accounting_coa_id
46772: xla_accounting_err_pkg.build_message
46773: (p_appli_s_name => 'XLA'
46774: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
46775: ,p_token_1 => 'LINE_NUMBER'
46776: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
46777: ,p_token_2 => 'LINE_TYPE_NAME'
46778: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
46779: l_component_type
46780: ,l_component_code
46808: --
46809: --
46810: ------------------------------------------------------------------------------------------------
46811: -- 4219869 Business Flow
46812: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46813: -- Prior Entry. Currently, the following code is always generated.
46814: ------------------------------------------------------------------------------------------------
46815: XLA_AE_LINES_PKG.ValidateCurrentLine;
46816:
46811: -- 4219869 Business Flow
46812: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46813: -- Prior Entry. Currently, the following code is always generated.
46814: ------------------------------------------------------------------------------------------------
46815: XLA_AE_LINES_PKG.ValidateCurrentLine;
46816:
46817: ------------------------------------------------------------------------------------
46818: -- 4219869 Business Flow
46819: -- Populated credit and debit amounts -- Need to generate this within IF
46817: ------------------------------------------------------------------------------------
46818: -- 4219869 Business Flow
46819: -- Populated credit and debit amounts -- Need to generate this within IF
46820: ------------------------------------------------------------------------------------
46821: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46822:
46823: ----------------------------------------------------------------------------------
46824: -- 4219869 Business Flow
46825: -- Update journal entry status -- Need to generate this within IF
46849: -- To allow MPA report to determine if it should generate report process
46850: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46851: ------------------------------------------------------------------------------------------
46852:
46853: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46854: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46855: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46856: -- call ADRs
46857: -- Bug 4922099
46850: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46851: ------------------------------------------------------------------------------------------
46852:
46853: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46854: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46855: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46856: -- call ADRs
46857: -- Bug 4922099
46858: --
46874: , x_value_type_code => l_adr_value_type_code
46875: , p_side => 'NA'
46876: );
46877:
46878: xla_ae_lines_pkg.set_ccid(
46879: p_code_combination_id => l_ccid
46880: , p_value_type_code => l_adr_value_type_code
46881: , p_transaction_coa_id => l_adr_transaction_coa_id
46882: , p_accounting_coa_id => l_adr_accounting_coa_id
46897:
46898: --
46899: -- Update the line information that should be overwritten
46900: --
46901: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46902: p_header_num => 1);
46903: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46904:
46905: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46899: -- Update the line information that should be overwritten
46900: --
46901: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46902: p_header_num => 1);
46903: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46904:
46905: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46906:
46907: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46901: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46902: p_header_num => 1);
46903: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46904:
46905: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46906:
46907: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46908: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46909: END IF;
46904:
46905: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46906:
46907: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46908: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46909: END IF;
46910:
46911: --
46912: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46911: --
46912: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46913: --
46914: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
46915: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
46916: ELSE
46917: ---------------------------------------------------------------------------------------------------
46918: -- 4262811a Switch Sign
46919: ---------------------------------------------------------------------------------------------------
46916: ELSE
46917: ---------------------------------------------------------------------------------------------------
46918: -- 4262811a Switch Sign
46919: ---------------------------------------------------------------------------------------------------
46920: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46921: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46922: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46923: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46924: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46917: ---------------------------------------------------------------------------------------------------
46918: -- 4262811a Switch Sign
46919: ---------------------------------------------------------------------------------------------------
46920: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46921: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46922: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46923: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46924: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46925: -- 5132302
46918: -- 4262811a Switch Sign
46919: ---------------------------------------------------------------------------------------------------
46920: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46921: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46922: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46923: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46924: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46925: -- 5132302
46926: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46919: ---------------------------------------------------------------------------------------------------
46920: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46921: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46922: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46923: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46924: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46925: -- 5132302
46926: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46927: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46920: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46921: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46922: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46923: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46924: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46925: -- 5132302
46926: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46927: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46928:
46922: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46923: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46924: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46925: -- 5132302
46926: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46927: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46928:
46929: END IF;
46930:
46923: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46924: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46925: -- 5132302
46926: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46927: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46928:
46929: END IF;
46930:
46931: -- 4955764
46928:
46929: END IF;
46930:
46931: -- 4955764
46932: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46933: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46934:
46935:
46936: XLA_AE_LINES_PKG.ValidateCurrentLine;
46932: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46933: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46934:
46935:
46936: XLA_AE_LINES_PKG.ValidateCurrentLine;
46937: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46938:
46939: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46940: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46933: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46934:
46935:
46936: XLA_AE_LINES_PKG.ValidateCurrentLine;
46937: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46938:
46939: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46940: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46941: ,p_balance_type_code => l_balance_type_code);
47068: --
47069: -- bulk performance
47070: --
47071: l_balance_type_code VARCHAR2(1);
47072: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
47073: l_log_module VARCHAR2(240);
47074:
47075: --
47076: -- Upgrade strategy
47138: ') = 'N'
47139: THEN
47140:
47141: --
47142: XLA_AE_LINES_PKG.SetNewLine;
47143:
47144: p_balance_type_code := l_balance_type_code;
47145: -- set the flag so later we will know whether the gain loss line needs to be created
47146:
47150:
47151: --
47152: -- bulk performance
47153: --
47154: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
47155: p_header_num => 0); -- 4262811
47156: --
47157: -- set accounting line options
47158: --
47155: p_header_num => 0); -- 4262811
47156: --
47157: -- set accounting line options
47158: --
47159: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
47160: p_natural_side_code => 'C'
47161: , p_gain_or_loss_flag => 'N'
47162: , p_gl_transfer_mode_code => 'S'
47163: , p_acct_entry_type_code => 'A'
47169: --
47170: --
47171: -- set accounting line type info
47172: --
47173: xla_ae_lines_pkg.SetAcctLineType
47174: (p_component_type => l_component_type
47175: ,p_event_type_code => l_event_type_code
47176: ,p_line_definition_owner_code => l_line_definition_owner_code
47177: ,p_line_definition_code => l_line_definition_code
47183: ,p_event_class_code => l_event_class_code);
47184: --
47185: -- set accounting class
47186: --
47187: xla_ae_lines_pkg.SetAcctClass(
47188: p_accounting_class_code => 'MISC_CASH'
47189: , p_ae_header_id => l_ae_header_id
47190: );
47191:
47191:
47192: --
47193: -- set rounding class
47194: --
47195: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47196: 'RECEIVABLE';
47197:
47198: --
47199: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47195: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47196: 'RECEIVABLE';
47197:
47198: --
47199: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47200: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47201: --
47202: -- bulk performance
47203: --
47196: 'RECEIVABLE';
47197:
47198: --
47199: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47200: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47201: --
47202: -- bulk performance
47203: --
47204: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47200: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47201: --
47202: -- bulk performance
47203: --
47204: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47205:
47206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47207: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47208:
47202: -- bulk performance
47203: --
47204: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47205:
47206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47207: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47208:
47209: -- 4955764
47210: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47207: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47208:
47209: -- 4955764
47210: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47211: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
47212:
47213: -- 4458381 Public Sector Enh
47214:
47234: l_rec_acct_attrs.array_char_value(7) := p_source_28;
47235: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
47236: l_rec_acct_attrs.array_num_value(8) := p_source_29;
47237:
47238: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47239: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47240:
47241: ---------------------------------------------------------------------------------------------------------------
47242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47235: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
47236: l_rec_acct_attrs.array_num_value(8) := p_source_29;
47237:
47238: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47239: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47240:
47241: ---------------------------------------------------------------------------------------------------------------
47242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47243: ---------------------------------------------------------------------------------------------------------------
47238: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47239: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47240:
47241: ---------------------------------------------------------------------------------------------------------------
47242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47243: ---------------------------------------------------------------------------------------------------------------
47244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47245:
47246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47240:
47241: ---------------------------------------------------------------------------------------------------------------
47242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47243: ---------------------------------------------------------------------------------------------------------------
47244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47245:
47246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47247: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47248:
47242: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47243: ---------------------------------------------------------------------------------------------------------------
47244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47245:
47246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47247: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47248:
47249: IF xla_accounting_cache_pkg.GetValueChar
47250: (p_source_code => 'LEDGER_CATEGORY_CODE'
47243: ---------------------------------------------------------------------------------------------------------------
47244: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47245:
47246: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47247: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47248:
47249: IF xla_accounting_cache_pkg.GetValueChar
47250: (p_source_code => 'LEDGER_CATEGORY_CODE'
47251: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
47254: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
47255: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
47256: )
47257: THEN
47258: xla_ae_lines_pkg.BflowUpgEntry
47259: (p_business_method_code => l_bflow_method_code
47260: ,p_business_class_code => l_bflow_class_code
47261: ,p_balance_type => l_balance_type_code);
47262: ELSE
47294: , x_value_type_code => l_adr_value_type_code
47295: , p_side => 'NA'
47296: );
47297:
47298: xla_ae_lines_pkg.set_ccid(
47299: p_code_combination_id => l_ccid
47300: , p_value_type_code => l_adr_value_type_code
47301: , p_transaction_coa_id => l_adr_transaction_coa_id
47302: , p_accounting_coa_id => l_adr_accounting_coa_id
47330: xla_accounting_err_pkg.build_message
47331: (p_appli_s_name => 'XLA'
47332: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
47333: ,p_token_1 => 'LINE_NUMBER'
47334: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
47335: ,p_token_2 => 'LINE_TYPE_NAME'
47336: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
47337: l_component_type
47338: ,l_component_code
47366: --
47367: --
47368: ------------------------------------------------------------------------------------------------
47369: -- 4219869 Business Flow
47370: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47371: -- Prior Entry. Currently, the following code is always generated.
47372: ------------------------------------------------------------------------------------------------
47373: XLA_AE_LINES_PKG.ValidateCurrentLine;
47374:
47369: -- 4219869 Business Flow
47370: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47371: -- Prior Entry. Currently, the following code is always generated.
47372: ------------------------------------------------------------------------------------------------
47373: XLA_AE_LINES_PKG.ValidateCurrentLine;
47374:
47375: ------------------------------------------------------------------------------------
47376: -- 4219869 Business Flow
47377: -- Populated credit and debit amounts -- Need to generate this within IF
47375: ------------------------------------------------------------------------------------
47376: -- 4219869 Business Flow
47377: -- Populated credit and debit amounts -- Need to generate this within IF
47378: ------------------------------------------------------------------------------------
47379: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47380:
47381: ----------------------------------------------------------------------------------
47382: -- 4219869 Business Flow
47383: -- Update journal entry status -- Need to generate this within IF
47407: -- To allow MPA report to determine if it should generate report process
47408: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47409: ------------------------------------------------------------------------------------------
47410:
47411: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47412: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47413: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47414: -- call ADRs
47415: -- Bug 4922099
47408: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47409: ------------------------------------------------------------------------------------------
47410:
47411: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47412: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47413: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47414: -- call ADRs
47415: -- Bug 4922099
47416: --
47432: , x_value_type_code => l_adr_value_type_code
47433: , p_side => 'NA'
47434: );
47435:
47436: xla_ae_lines_pkg.set_ccid(
47437: p_code_combination_id => l_ccid
47438: , p_value_type_code => l_adr_value_type_code
47439: , p_transaction_coa_id => l_adr_transaction_coa_id
47440: , p_accounting_coa_id => l_adr_accounting_coa_id
47455:
47456: --
47457: -- Update the line information that should be overwritten
47458: --
47459: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47460: p_header_num => 1);
47461: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47462:
47463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47457: -- Update the line information that should be overwritten
47458: --
47459: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47460: p_header_num => 1);
47461: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47462:
47463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47464:
47465: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47459: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47460: p_header_num => 1);
47461: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47462:
47463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47464:
47465: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47466: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47467: END IF;
47462:
47463: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47464:
47465: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47466: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47467: END IF;
47468:
47469: --
47470: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47469: --
47470: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47471: --
47472: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
47473: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
47474: ELSE
47475: ---------------------------------------------------------------------------------------------------
47476: -- 4262811a Switch Sign
47477: ---------------------------------------------------------------------------------------------------
47474: ELSE
47475: ---------------------------------------------------------------------------------------------------
47476: -- 4262811a Switch Sign
47477: ---------------------------------------------------------------------------------------------------
47478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47475: ---------------------------------------------------------------------------------------------------
47476: -- 4262811a Switch Sign
47477: ---------------------------------------------------------------------------------------------------
47478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47483: -- 5132302
47476: -- 4262811a Switch Sign
47477: ---------------------------------------------------------------------------------------------------
47478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47483: -- 5132302
47484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47477: ---------------------------------------------------------------------------------------------------
47478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47483: -- 5132302
47484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47485: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47478: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47479: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47483: -- 5132302
47484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47485: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47486:
47480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47483: -- 5132302
47484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47485: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47486:
47487: END IF;
47488:
47481: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47482: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47483: -- 5132302
47484: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47485: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47486:
47487: END IF;
47488:
47489: -- 4955764
47486:
47487: END IF;
47488:
47489: -- 4955764
47490: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47491: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47492:
47493:
47494: XLA_AE_LINES_PKG.ValidateCurrentLine;
47490: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47491: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47492:
47493:
47494: XLA_AE_LINES_PKG.ValidateCurrentLine;
47495: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47496:
47497: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47498: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47491: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47492:
47493:
47494: XLA_AE_LINES_PKG.ValidateCurrentLine;
47495: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47496:
47497: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47498: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47499: ,p_balance_type_code => l_balance_type_code);
47626: --
47627: -- bulk performance
47628: --
47629: l_balance_type_code VARCHAR2(1);
47630: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
47631: l_log_module VARCHAR2(240);
47632:
47633: --
47634: -- Upgrade strategy
47696: ') = 'N'
47697: THEN
47698:
47699: --
47700: XLA_AE_LINES_PKG.SetNewLine;
47701:
47702: p_balance_type_code := l_balance_type_code;
47703: -- set the flag so later we will know whether the gain loss line needs to be created
47704:
47708:
47709: --
47710: -- bulk performance
47711: --
47712: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
47713: p_header_num => 0); -- 4262811
47714: --
47715: -- set accounting line options
47716: --
47713: p_header_num => 0); -- 4262811
47714: --
47715: -- set accounting line options
47716: --
47717: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
47718: p_natural_side_code => 'C'
47719: , p_gain_or_loss_flag => 'N'
47720: , p_gl_transfer_mode_code => 'S'
47721: , p_acct_entry_type_code => 'A'
47727: --
47728: --
47729: -- set accounting line type info
47730: --
47731: xla_ae_lines_pkg.SetAcctLineType
47732: (p_component_type => l_component_type
47733: ,p_event_type_code => l_event_type_code
47734: ,p_line_definition_owner_code => l_line_definition_owner_code
47735: ,p_line_definition_code => l_line_definition_code
47741: ,p_event_class_code => l_event_class_code);
47742: --
47743: -- set accounting class
47744: --
47745: xla_ae_lines_pkg.SetAcctClass(
47746: p_accounting_class_code => 'REMITTANCE'
47747: , p_ae_header_id => l_ae_header_id
47748: );
47749:
47749:
47750: --
47751: -- set rounding class
47752: --
47753: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47754: 'RECEIVABLE';
47755:
47756: --
47757: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47753: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47754: 'RECEIVABLE';
47755:
47756: --
47757: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47758: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47759: --
47760: -- bulk performance
47761: --
47754: 'RECEIVABLE';
47755:
47756: --
47757: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47758: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47759: --
47760: -- bulk performance
47761: --
47762: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47758: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47759: --
47760: -- bulk performance
47761: --
47762: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47763:
47764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47765: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47766:
47760: -- bulk performance
47761: --
47762: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47763:
47764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47765: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47766:
47767: -- 4955764
47768: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47765: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47766:
47767: -- 4955764
47768: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47769: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
47770:
47771: -- 4458381 Public Sector Enh
47772:
47792: l_rec_acct_attrs.array_char_value(7) := p_source_28;
47793: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
47794: l_rec_acct_attrs.array_num_value(8) := p_source_29;
47795:
47796: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47797: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47798:
47799: ---------------------------------------------------------------------------------------------------------------
47800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47793: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
47794: l_rec_acct_attrs.array_num_value(8) := p_source_29;
47795:
47796: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47797: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47798:
47799: ---------------------------------------------------------------------------------------------------------------
47800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47801: ---------------------------------------------------------------------------------------------------------------
47796: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47797: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47798:
47799: ---------------------------------------------------------------------------------------------------------------
47800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47801: ---------------------------------------------------------------------------------------------------------------
47802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47803:
47804: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47798:
47799: ---------------------------------------------------------------------------------------------------------------
47800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47801: ---------------------------------------------------------------------------------------------------------------
47802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47803:
47804: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47805: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47806:
47800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47801: ---------------------------------------------------------------------------------------------------------------
47802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47803:
47804: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47805: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47806:
47807: IF xla_accounting_cache_pkg.GetValueChar
47808: (p_source_code => 'LEDGER_CATEGORY_CODE'
47801: ---------------------------------------------------------------------------------------------------------------
47802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47803:
47804: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47805: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47806:
47807: IF xla_accounting_cache_pkg.GetValueChar
47808: (p_source_code => 'LEDGER_CATEGORY_CODE'
47809: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
47812: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
47813: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
47814: )
47815: THEN
47816: xla_ae_lines_pkg.BflowUpgEntry
47817: (p_business_method_code => l_bflow_method_code
47818: ,p_business_class_code => l_bflow_class_code
47819: ,p_balance_type => l_balance_type_code);
47820: ELSE
47852: , x_value_type_code => l_adr_value_type_code
47853: , p_side => 'NA'
47854: );
47855:
47856: xla_ae_lines_pkg.set_ccid(
47857: p_code_combination_id => l_ccid
47858: , p_value_type_code => l_adr_value_type_code
47859: , p_transaction_coa_id => l_adr_transaction_coa_id
47860: , p_accounting_coa_id => l_adr_accounting_coa_id
47888: xla_accounting_err_pkg.build_message
47889: (p_appli_s_name => 'XLA'
47890: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
47891: ,p_token_1 => 'LINE_NUMBER'
47892: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
47893: ,p_token_2 => 'LINE_TYPE_NAME'
47894: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
47895: l_component_type
47896: ,l_component_code
47924: --
47925: --
47926: ------------------------------------------------------------------------------------------------
47927: -- 4219869 Business Flow
47928: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47929: -- Prior Entry. Currently, the following code is always generated.
47930: ------------------------------------------------------------------------------------------------
47931: XLA_AE_LINES_PKG.ValidateCurrentLine;
47932:
47927: -- 4219869 Business Flow
47928: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47929: -- Prior Entry. Currently, the following code is always generated.
47930: ------------------------------------------------------------------------------------------------
47931: XLA_AE_LINES_PKG.ValidateCurrentLine;
47932:
47933: ------------------------------------------------------------------------------------
47934: -- 4219869 Business Flow
47935: -- Populated credit and debit amounts -- Need to generate this within IF
47933: ------------------------------------------------------------------------------------
47934: -- 4219869 Business Flow
47935: -- Populated credit and debit amounts -- Need to generate this within IF
47936: ------------------------------------------------------------------------------------
47937: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47938:
47939: ----------------------------------------------------------------------------------
47940: -- 4219869 Business Flow
47941: -- Update journal entry status -- Need to generate this within IF
47965: -- To allow MPA report to determine if it should generate report process
47966: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47967: ------------------------------------------------------------------------------------------
47968:
47969: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47970: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47971: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47972: -- call ADRs
47973: -- Bug 4922099
47966: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47967: ------------------------------------------------------------------------------------------
47968:
47969: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47970: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47971: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47972: -- call ADRs
47973: -- Bug 4922099
47974: --
47990: , x_value_type_code => l_adr_value_type_code
47991: , p_side => 'NA'
47992: );
47993:
47994: xla_ae_lines_pkg.set_ccid(
47995: p_code_combination_id => l_ccid
47996: , p_value_type_code => l_adr_value_type_code
47997: , p_transaction_coa_id => l_adr_transaction_coa_id
47998: , p_accounting_coa_id => l_adr_accounting_coa_id
48013:
48014: --
48015: -- Update the line information that should be overwritten
48016: --
48017: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48018: p_header_num => 1);
48019: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48020:
48021: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48015: -- Update the line information that should be overwritten
48016: --
48017: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48018: p_header_num => 1);
48019: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48020:
48021: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48022:
48023: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48017: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48018: p_header_num => 1);
48019: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48020:
48021: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48022:
48023: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48024: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48025: END IF;
48020:
48021: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48022:
48023: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48024: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48025: END IF;
48026:
48027: --
48028: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48027: --
48028: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48029: --
48030: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
48031: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
48032: ELSE
48033: ---------------------------------------------------------------------------------------------------
48034: -- 4262811a Switch Sign
48035: ---------------------------------------------------------------------------------------------------
48032: ELSE
48033: ---------------------------------------------------------------------------------------------------
48034: -- 4262811a Switch Sign
48035: ---------------------------------------------------------------------------------------------------
48036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48033: ---------------------------------------------------------------------------------------------------
48034: -- 4262811a Switch Sign
48035: ---------------------------------------------------------------------------------------------------
48036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48041: -- 5132302
48034: -- 4262811a Switch Sign
48035: ---------------------------------------------------------------------------------------------------
48036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48041: -- 5132302
48042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48035: ---------------------------------------------------------------------------------------------------
48036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48041: -- 5132302
48042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48043: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48041: -- 5132302
48042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48043: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48044:
48038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48041: -- 5132302
48042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48043: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48044:
48045: END IF;
48046:
48039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48041: -- 5132302
48042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48043: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48044:
48045: END IF;
48046:
48047: -- 4955764
48044:
48045: END IF;
48046:
48047: -- 4955764
48048: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48049: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48050:
48051:
48052: XLA_AE_LINES_PKG.ValidateCurrentLine;
48048: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48049: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48050:
48051:
48052: XLA_AE_LINES_PKG.ValidateCurrentLine;
48053: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48054:
48055: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48056: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48049: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48050:
48051:
48052: XLA_AE_LINES_PKG.ValidateCurrentLine;
48053: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48054:
48055: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48056: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48057: ,p_balance_type_code => l_balance_type_code);
48184: --
48185: -- bulk performance
48186: --
48187: l_balance_type_code VARCHAR2(1);
48188: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
48189: l_log_module VARCHAR2(240);
48190:
48191: --
48192: -- Upgrade strategy
48254: ') = 'N'
48255: THEN
48256:
48257: --
48258: XLA_AE_LINES_PKG.SetNewLine;
48259:
48260: p_balance_type_code := l_balance_type_code;
48261: -- set the flag so later we will know whether the gain loss line needs to be created
48262:
48266:
48267: --
48268: -- bulk performance
48269: --
48270: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
48271: p_header_num => 0); -- 4262811
48272: --
48273: -- set accounting line options
48274: --
48271: p_header_num => 0); -- 4262811
48272: --
48273: -- set accounting line options
48274: --
48275: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
48276: p_natural_side_code => 'C'
48277: , p_gain_or_loss_flag => 'N'
48278: , p_gl_transfer_mode_code => 'S'
48279: , p_acct_entry_type_code => 'A'
48285: --
48286: --
48287: -- set accounting line type info
48288: --
48289: xla_ae_lines_pkg.SetAcctLineType
48290: (p_component_type => l_component_type
48291: ,p_event_type_code => l_event_type_code
48292: ,p_line_definition_owner_code => l_line_definition_owner_code
48293: ,p_line_definition_code => l_line_definition_code
48299: ,p_event_class_code => l_event_class_code);
48300: --
48301: -- set accounting class
48302: --
48303: xla_ae_lines_pkg.SetAcctClass(
48304: p_accounting_class_code => 'TAX'
48305: , p_ae_header_id => l_ae_header_id
48306: );
48307:
48307:
48308: --
48309: -- set rounding class
48310: --
48311: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48312: 'RECEIVABLE';
48313:
48314: --
48315: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48311: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48312: 'RECEIVABLE';
48313:
48314: --
48315: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48316: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48317: --
48318: -- bulk performance
48319: --
48312: 'RECEIVABLE';
48313:
48314: --
48315: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48316: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48317: --
48318: -- bulk performance
48319: --
48320: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48316: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48317: --
48318: -- bulk performance
48319: --
48320: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48321:
48322: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48323: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48324:
48318: -- bulk performance
48319: --
48320: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48321:
48322: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48323: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48324:
48325: -- 4955764
48326: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48322: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48323: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48324:
48325: -- 4955764
48326: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48327: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
48328:
48329: -- 4458381 Public Sector Enh
48330:
48350: l_rec_acct_attrs.array_char_value(7) := p_source_28;
48351: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
48352: l_rec_acct_attrs.array_num_value(8) := p_source_29;
48353:
48354: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48355: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48356:
48357: ---------------------------------------------------------------------------------------------------------------
48358: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48351: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
48352: l_rec_acct_attrs.array_num_value(8) := p_source_29;
48353:
48354: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48355: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48356:
48357: ---------------------------------------------------------------------------------------------------------------
48358: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48359: ---------------------------------------------------------------------------------------------------------------
48354: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48355: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48356:
48357: ---------------------------------------------------------------------------------------------------------------
48358: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48359: ---------------------------------------------------------------------------------------------------------------
48360: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48361:
48362: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48356:
48357: ---------------------------------------------------------------------------------------------------------------
48358: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48359: ---------------------------------------------------------------------------------------------------------------
48360: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48361:
48362: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48363: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48364:
48358: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48359: ---------------------------------------------------------------------------------------------------------------
48360: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48361:
48362: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48363: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48364:
48365: IF xla_accounting_cache_pkg.GetValueChar
48366: (p_source_code => 'LEDGER_CATEGORY_CODE'
48359: ---------------------------------------------------------------------------------------------------------------
48360: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48361:
48362: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48363: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48364:
48365: IF xla_accounting_cache_pkg.GetValueChar
48366: (p_source_code => 'LEDGER_CATEGORY_CODE'
48367: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
48370: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
48371: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
48372: )
48373: THEN
48374: xla_ae_lines_pkg.BflowUpgEntry
48375: (p_business_method_code => l_bflow_method_code
48376: ,p_business_class_code => l_bflow_class_code
48377: ,p_balance_type => l_balance_type_code);
48378: ELSE
48410: , x_value_type_code => l_adr_value_type_code
48411: , p_side => 'NA'
48412: );
48413:
48414: xla_ae_lines_pkg.set_ccid(
48415: p_code_combination_id => l_ccid
48416: , p_value_type_code => l_adr_value_type_code
48417: , p_transaction_coa_id => l_adr_transaction_coa_id
48418: , p_accounting_coa_id => l_adr_accounting_coa_id
48446: xla_accounting_err_pkg.build_message
48447: (p_appli_s_name => 'XLA'
48448: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
48449: ,p_token_1 => 'LINE_NUMBER'
48450: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
48451: ,p_token_2 => 'LINE_TYPE_NAME'
48452: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
48453: l_component_type
48454: ,l_component_code
48482: --
48483: --
48484: ------------------------------------------------------------------------------------------------
48485: -- 4219869 Business Flow
48486: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48487: -- Prior Entry. Currently, the following code is always generated.
48488: ------------------------------------------------------------------------------------------------
48489: XLA_AE_LINES_PKG.ValidateCurrentLine;
48490:
48485: -- 4219869 Business Flow
48486: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48487: -- Prior Entry. Currently, the following code is always generated.
48488: ------------------------------------------------------------------------------------------------
48489: XLA_AE_LINES_PKG.ValidateCurrentLine;
48490:
48491: ------------------------------------------------------------------------------------
48492: -- 4219869 Business Flow
48493: -- Populated credit and debit amounts -- Need to generate this within IF
48491: ------------------------------------------------------------------------------------
48492: -- 4219869 Business Flow
48493: -- Populated credit and debit amounts -- Need to generate this within IF
48494: ------------------------------------------------------------------------------------
48495: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48496:
48497: ----------------------------------------------------------------------------------
48498: -- 4219869 Business Flow
48499: -- Update journal entry status -- Need to generate this within IF
48523: -- To allow MPA report to determine if it should generate report process
48524: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48525: ------------------------------------------------------------------------------------------
48526:
48527: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48528: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48529: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48530: -- call ADRs
48531: -- Bug 4922099
48524: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48525: ------------------------------------------------------------------------------------------
48526:
48527: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48528: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48529: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48530: -- call ADRs
48531: -- Bug 4922099
48532: --
48548: , x_value_type_code => l_adr_value_type_code
48549: , p_side => 'NA'
48550: );
48551:
48552: xla_ae_lines_pkg.set_ccid(
48553: p_code_combination_id => l_ccid
48554: , p_value_type_code => l_adr_value_type_code
48555: , p_transaction_coa_id => l_adr_transaction_coa_id
48556: , p_accounting_coa_id => l_adr_accounting_coa_id
48571:
48572: --
48573: -- Update the line information that should be overwritten
48574: --
48575: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48576: p_header_num => 1);
48577: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48578:
48579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48573: -- Update the line information that should be overwritten
48574: --
48575: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48576: p_header_num => 1);
48577: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48578:
48579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48580:
48581: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48575: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48576: p_header_num => 1);
48577: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48578:
48579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48580:
48581: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48582: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48583: END IF;
48578:
48579: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48580:
48581: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48582: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48583: END IF;
48584:
48585: --
48586: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48585: --
48586: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48587: --
48588: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
48589: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
48590: ELSE
48591: ---------------------------------------------------------------------------------------------------
48592: -- 4262811a Switch Sign
48593: ---------------------------------------------------------------------------------------------------
48590: ELSE
48591: ---------------------------------------------------------------------------------------------------
48592: -- 4262811a Switch Sign
48593: ---------------------------------------------------------------------------------------------------
48594: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48595: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48596: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48597: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48598: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48591: ---------------------------------------------------------------------------------------------------
48592: -- 4262811a Switch Sign
48593: ---------------------------------------------------------------------------------------------------
48594: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48595: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48596: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48597: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48598: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48599: -- 5132302
48592: -- 4262811a Switch Sign
48593: ---------------------------------------------------------------------------------------------------
48594: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48595: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48596: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48597: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48598: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48599: -- 5132302
48600: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48593: ---------------------------------------------------------------------------------------------------
48594: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48595: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48596: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48597: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48598: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48599: -- 5132302
48600: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48601: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48594: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48595: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48596: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48597: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48598: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48599: -- 5132302
48600: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48601: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48602:
48596: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48597: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48598: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48599: -- 5132302
48600: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48601: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48602:
48603: END IF;
48604:
48597: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48598: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48599: -- 5132302
48600: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48601: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48602:
48603: END IF;
48604:
48605: -- 4955764
48602:
48603: END IF;
48604:
48605: -- 4955764
48606: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48607: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48608:
48609:
48610: XLA_AE_LINES_PKG.ValidateCurrentLine;
48606: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48607: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48608:
48609:
48610: XLA_AE_LINES_PKG.ValidateCurrentLine;
48611: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48612:
48613: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48614: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48607: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48608:
48609:
48610: XLA_AE_LINES_PKG.ValidateCurrentLine;
48611: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48612:
48613: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48614: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48615: ,p_balance_type_code => l_balance_type_code);
48758: --
48759: -- bulk performance
48760: --
48761: l_balance_type_code VARCHAR2(1);
48762: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
48763: l_log_module VARCHAR2(240);
48764:
48765: --
48766: -- Upgrade strategy
48828: ') = 'N'
48829: THEN
48830:
48831: --
48832: XLA_AE_LINES_PKG.SetNewLine;
48833:
48834: p_balance_type_code := l_balance_type_code;
48835: -- set the flag so later we will know whether the gain loss line needs to be created
48836:
48840:
48841: --
48842: -- bulk performance
48843: --
48844: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
48845: p_header_num => 0); -- 4262811
48846: --
48847: -- set accounting line options
48848: --
48845: p_header_num => 0); -- 4262811
48846: --
48847: -- set accounting line options
48848: --
48849: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
48850: p_natural_side_code => 'C'
48851: , p_gain_or_loss_flag => 'N'
48852: , p_gl_transfer_mode_code => 'S'
48853: , p_acct_entry_type_code => 'A'
48859: --
48860: --
48861: -- set accounting line type info
48862: --
48863: xla_ae_lines_pkg.SetAcctLineType
48864: (p_component_type => l_component_type
48865: ,p_event_type_code => l_event_type_code
48866: ,p_line_definition_owner_code => l_line_definition_owner_code
48867: ,p_line_definition_code => l_line_definition_code
48873: ,p_event_class_code => l_event_class_code);
48874: --
48875: -- set accounting class
48876: --
48877: xla_ae_lines_pkg.SetAcctClass(
48878: p_accounting_class_code => 'ACC'
48879: , p_ae_header_id => l_ae_header_id
48880: );
48881:
48881:
48882: --
48883: -- set rounding class
48884: --
48885: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48886: 'RECEIVABLE';
48887:
48888: --
48889: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48885: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48886: 'RECEIVABLE';
48887:
48888: --
48889: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48890: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48891: --
48892: -- bulk performance
48893: --
48886: 'RECEIVABLE';
48887:
48888: --
48889: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48890: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48891: --
48892: -- bulk performance
48893: --
48894: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48890: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48891: --
48892: -- bulk performance
48893: --
48894: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48895:
48896: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48897: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48898:
48892: -- bulk performance
48893: --
48894: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48895:
48896: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48897: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48898:
48899: -- 4955764
48900: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48896: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48897: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48898:
48899: -- 4955764
48900: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48901: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
48902:
48903: -- 4458381 Public Sector Enh
48904:
48940: l_rec_acct_attrs.array_num_value(15) := p_source_64;
48941: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48942: l_rec_acct_attrs.array_char_value(16) := p_source_65;
48943:
48944: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48945: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48946:
48947: ---------------------------------------------------------------------------------------------------------------
48948: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48941: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48942: l_rec_acct_attrs.array_char_value(16) := p_source_65;
48943:
48944: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48945: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48946:
48947: ---------------------------------------------------------------------------------------------------------------
48948: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48949: ---------------------------------------------------------------------------------------------------------------
48944: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48945: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48946:
48947: ---------------------------------------------------------------------------------------------------------------
48948: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48949: ---------------------------------------------------------------------------------------------------------------
48950: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48951:
48952: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48946:
48947: ---------------------------------------------------------------------------------------------------------------
48948: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48949: ---------------------------------------------------------------------------------------------------------------
48950: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48951:
48952: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48953: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48954:
48948: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48949: ---------------------------------------------------------------------------------------------------------------
48950: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48951:
48952: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48953: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48954:
48955: IF xla_accounting_cache_pkg.GetValueChar
48956: (p_source_code => 'LEDGER_CATEGORY_CODE'
48949: ---------------------------------------------------------------------------------------------------------------
48950: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48951:
48952: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48953: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48954:
48955: IF xla_accounting_cache_pkg.GetValueChar
48956: (p_source_code => 'LEDGER_CATEGORY_CODE'
48957: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
48960: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
48961: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
48962: )
48963: THEN
48964: xla_ae_lines_pkg.BflowUpgEntry
48965: (p_business_method_code => l_bflow_method_code
48966: ,p_business_class_code => l_bflow_class_code
48967: ,p_balance_type => l_balance_type_code);
48968: ELSE
49000: , x_value_type_code => l_adr_value_type_code
49001: , p_side => 'NA'
49002: );
49003:
49004: xla_ae_lines_pkg.set_ccid(
49005: p_code_combination_id => l_ccid
49006: , p_value_type_code => l_adr_value_type_code
49007: , p_transaction_coa_id => l_adr_transaction_coa_id
49008: , p_accounting_coa_id => l_adr_accounting_coa_id
49036: xla_accounting_err_pkg.build_message
49037: (p_appli_s_name => 'XLA'
49038: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
49039: ,p_token_1 => 'LINE_NUMBER'
49040: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
49041: ,p_token_2 => 'LINE_TYPE_NAME'
49042: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
49043: l_component_type
49044: ,l_component_code
49072: --
49073: --
49074: ------------------------------------------------------------------------------------------------
49075: -- 4219869 Business Flow
49076: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49077: -- Prior Entry. Currently, the following code is always generated.
49078: ------------------------------------------------------------------------------------------------
49079: XLA_AE_LINES_PKG.ValidateCurrentLine;
49080:
49075: -- 4219869 Business Flow
49076: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49077: -- Prior Entry. Currently, the following code is always generated.
49078: ------------------------------------------------------------------------------------------------
49079: XLA_AE_LINES_PKG.ValidateCurrentLine;
49080:
49081: ------------------------------------------------------------------------------------
49082: -- 4219869 Business Flow
49083: -- Populated credit and debit amounts -- Need to generate this within IF
49081: ------------------------------------------------------------------------------------
49082: -- 4219869 Business Flow
49083: -- Populated credit and debit amounts -- Need to generate this within IF
49084: ------------------------------------------------------------------------------------
49085: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49086:
49087: ----------------------------------------------------------------------------------
49088: -- 4219869 Business Flow
49089: -- Update journal entry status -- Need to generate this within IF
49113: -- To allow MPA report to determine if it should generate report process
49114: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49115: ------------------------------------------------------------------------------------------
49116:
49117: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49118: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49119: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49120: -- call ADRs
49121: -- Bug 4922099
49114: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49115: ------------------------------------------------------------------------------------------
49116:
49117: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49118: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49119: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49120: -- call ADRs
49121: -- Bug 4922099
49122: --
49138: , x_value_type_code => l_adr_value_type_code
49139: , p_side => 'NA'
49140: );
49141:
49142: xla_ae_lines_pkg.set_ccid(
49143: p_code_combination_id => l_ccid
49144: , p_value_type_code => l_adr_value_type_code
49145: , p_transaction_coa_id => l_adr_transaction_coa_id
49146: , p_accounting_coa_id => l_adr_accounting_coa_id
49161:
49162: --
49163: -- Update the line information that should be overwritten
49164: --
49165: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49166: p_header_num => 1);
49167: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49168:
49169: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49163: -- Update the line information that should be overwritten
49164: --
49165: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49166: p_header_num => 1);
49167: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49168:
49169: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49170:
49171: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49165: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49166: p_header_num => 1);
49167: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49168:
49169: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49170:
49171: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49172: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49173: END IF;
49168:
49169: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49170:
49171: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49172: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49173: END IF;
49174:
49175: --
49176: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49175: --
49176: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49177: --
49178: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
49179: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
49180: ELSE
49181: ---------------------------------------------------------------------------------------------------
49182: -- 4262811a Switch Sign
49183: ---------------------------------------------------------------------------------------------------
49180: ELSE
49181: ---------------------------------------------------------------------------------------------------
49182: -- 4262811a Switch Sign
49183: ---------------------------------------------------------------------------------------------------
49184: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49185: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49187: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49181: ---------------------------------------------------------------------------------------------------
49182: -- 4262811a Switch Sign
49183: ---------------------------------------------------------------------------------------------------
49184: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49185: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49187: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49189: -- 5132302
49182: -- 4262811a Switch Sign
49183: ---------------------------------------------------------------------------------------------------
49184: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49185: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49187: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49189: -- 5132302
49190: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49183: ---------------------------------------------------------------------------------------------------
49184: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49185: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49187: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49189: -- 5132302
49190: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49191: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49184: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49185: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49187: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49189: -- 5132302
49190: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49191: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49192:
49186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49187: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49189: -- 5132302
49190: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49191: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49192:
49193: END IF;
49194:
49187: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49189: -- 5132302
49190: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49191: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49192:
49193: END IF;
49194:
49195: -- 4955764
49192:
49193: END IF;
49194:
49195: -- 4955764
49196: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49197: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49198:
49199:
49200: XLA_AE_LINES_PKG.ValidateCurrentLine;
49196: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49197: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49198:
49199:
49200: XLA_AE_LINES_PKG.ValidateCurrentLine;
49201: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49202:
49203: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49204: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49197: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49198:
49199:
49200: XLA_AE_LINES_PKG.ValidateCurrentLine;
49201: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49202:
49203: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49204: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49205: ,p_balance_type_code => l_balance_type_code);
49348: --
49349: -- bulk performance
49350: --
49351: l_balance_type_code VARCHAR2(1);
49352: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
49353: l_log_module VARCHAR2(240);
49354:
49355: --
49356: -- Upgrade strategy
49418: ') = 'N'
49419: THEN
49420:
49421: --
49422: XLA_AE_LINES_PKG.SetNewLine;
49423:
49424: p_balance_type_code := l_balance_type_code;
49425: -- set the flag so later we will know whether the gain loss line needs to be created
49426:
49430:
49431: --
49432: -- bulk performance
49433: --
49434: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
49435: p_header_num => 0); -- 4262811
49436: --
49437: -- set accounting line options
49438: --
49435: p_header_num => 0); -- 4262811
49436: --
49437: -- set accounting line options
49438: --
49439: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
49440: p_natural_side_code => 'C'
49441: , p_gain_or_loss_flag => 'N'
49442: , p_gl_transfer_mode_code => 'S'
49443: , p_acct_entry_type_code => 'A'
49449: --
49450: --
49451: -- set accounting line type info
49452: --
49453: xla_ae_lines_pkg.SetAcctLineType
49454: (p_component_type => l_component_type
49455: ,p_event_type_code => l_event_type_code
49456: ,p_line_definition_owner_code => l_line_definition_owner_code
49457: ,p_line_definition_code => l_line_definition_code
49463: ,p_event_class_code => l_event_class_code);
49464: --
49465: -- set accounting class
49466: --
49467: xla_ae_lines_pkg.SetAcctClass(
49468: p_accounting_class_code => 'BANK_CHG'
49469: , p_ae_header_id => l_ae_header_id
49470: );
49471:
49471:
49472: --
49473: -- set rounding class
49474: --
49475: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49476: 'RECEIVABLE';
49477:
49478: --
49479: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49475: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49476: 'RECEIVABLE';
49477:
49478: --
49479: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49480: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49481: --
49482: -- bulk performance
49483: --
49476: 'RECEIVABLE';
49477:
49478: --
49479: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49480: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49481: --
49482: -- bulk performance
49483: --
49484: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49480: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49481: --
49482: -- bulk performance
49483: --
49484: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49485:
49486: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49487: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49488:
49482: -- bulk performance
49483: --
49484: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49485:
49486: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49487: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49488:
49489: -- 4955764
49490: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49486: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49487: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49488:
49489: -- 4955764
49490: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49491: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
49492:
49493: -- 4458381 Public Sector Enh
49494:
49530: l_rec_acct_attrs.array_num_value(15) := p_source_64;
49531: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49532: l_rec_acct_attrs.array_char_value(16) := p_source_65;
49533:
49534: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49535: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49536:
49537: ---------------------------------------------------------------------------------------------------------------
49538: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49531: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49532: l_rec_acct_attrs.array_char_value(16) := p_source_65;
49533:
49534: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49535: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49536:
49537: ---------------------------------------------------------------------------------------------------------------
49538: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49539: ---------------------------------------------------------------------------------------------------------------
49534: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49535: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49536:
49537: ---------------------------------------------------------------------------------------------------------------
49538: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49539: ---------------------------------------------------------------------------------------------------------------
49540: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49541:
49542: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49536:
49537: ---------------------------------------------------------------------------------------------------------------
49538: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49539: ---------------------------------------------------------------------------------------------------------------
49540: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49541:
49542: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49543: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49544:
49538: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49539: ---------------------------------------------------------------------------------------------------------------
49540: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49541:
49542: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49543: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49544:
49545: IF xla_accounting_cache_pkg.GetValueChar
49546: (p_source_code => 'LEDGER_CATEGORY_CODE'
49539: ---------------------------------------------------------------------------------------------------------------
49540: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49541:
49542: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49543: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49544:
49545: IF xla_accounting_cache_pkg.GetValueChar
49546: (p_source_code => 'LEDGER_CATEGORY_CODE'
49547: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
49550: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
49551: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
49552: )
49553: THEN
49554: xla_ae_lines_pkg.BflowUpgEntry
49555: (p_business_method_code => l_bflow_method_code
49556: ,p_business_class_code => l_bflow_class_code
49557: ,p_balance_type => l_balance_type_code);
49558: ELSE
49590: , x_value_type_code => l_adr_value_type_code
49591: , p_side => 'NA'
49592: );
49593:
49594: xla_ae_lines_pkg.set_ccid(
49595: p_code_combination_id => l_ccid
49596: , p_value_type_code => l_adr_value_type_code
49597: , p_transaction_coa_id => l_adr_transaction_coa_id
49598: , p_accounting_coa_id => l_adr_accounting_coa_id
49626: xla_accounting_err_pkg.build_message
49627: (p_appli_s_name => 'XLA'
49628: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
49629: ,p_token_1 => 'LINE_NUMBER'
49630: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
49631: ,p_token_2 => 'LINE_TYPE_NAME'
49632: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
49633: l_component_type
49634: ,l_component_code
49662: --
49663: --
49664: ------------------------------------------------------------------------------------------------
49665: -- 4219869 Business Flow
49666: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49667: -- Prior Entry. Currently, the following code is always generated.
49668: ------------------------------------------------------------------------------------------------
49669: XLA_AE_LINES_PKG.ValidateCurrentLine;
49670:
49665: -- 4219869 Business Flow
49666: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49667: -- Prior Entry. Currently, the following code is always generated.
49668: ------------------------------------------------------------------------------------------------
49669: XLA_AE_LINES_PKG.ValidateCurrentLine;
49670:
49671: ------------------------------------------------------------------------------------
49672: -- 4219869 Business Flow
49673: -- Populated credit and debit amounts -- Need to generate this within IF
49671: ------------------------------------------------------------------------------------
49672: -- 4219869 Business Flow
49673: -- Populated credit and debit amounts -- Need to generate this within IF
49674: ------------------------------------------------------------------------------------
49675: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49676:
49677: ----------------------------------------------------------------------------------
49678: -- 4219869 Business Flow
49679: -- Update journal entry status -- Need to generate this within IF
49703: -- To allow MPA report to determine if it should generate report process
49704: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49705: ------------------------------------------------------------------------------------------
49706:
49707: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49708: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49709: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49710: -- call ADRs
49711: -- Bug 4922099
49704: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49705: ------------------------------------------------------------------------------------------
49706:
49707: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49708: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49709: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49710: -- call ADRs
49711: -- Bug 4922099
49712: --
49728: , x_value_type_code => l_adr_value_type_code
49729: , p_side => 'NA'
49730: );
49731:
49732: xla_ae_lines_pkg.set_ccid(
49733: p_code_combination_id => l_ccid
49734: , p_value_type_code => l_adr_value_type_code
49735: , p_transaction_coa_id => l_adr_transaction_coa_id
49736: , p_accounting_coa_id => l_adr_accounting_coa_id
49751:
49752: --
49753: -- Update the line information that should be overwritten
49754: --
49755: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49756: p_header_num => 1);
49757: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49758:
49759: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49753: -- Update the line information that should be overwritten
49754: --
49755: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49756: p_header_num => 1);
49757: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49758:
49759: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49760:
49761: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49755: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49756: p_header_num => 1);
49757: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49758:
49759: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49760:
49761: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49762: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49763: END IF;
49758:
49759: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49760:
49761: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49762: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49763: END IF;
49764:
49765: --
49766: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49765: --
49766: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49767: --
49768: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
49769: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
49770: ELSE
49771: ---------------------------------------------------------------------------------------------------
49772: -- 4262811a Switch Sign
49773: ---------------------------------------------------------------------------------------------------
49770: ELSE
49771: ---------------------------------------------------------------------------------------------------
49772: -- 4262811a Switch Sign
49773: ---------------------------------------------------------------------------------------------------
49774: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49775: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49777: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49771: ---------------------------------------------------------------------------------------------------
49772: -- 4262811a Switch Sign
49773: ---------------------------------------------------------------------------------------------------
49774: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49775: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49777: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49779: -- 5132302
49772: -- 4262811a Switch Sign
49773: ---------------------------------------------------------------------------------------------------
49774: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49775: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49777: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49779: -- 5132302
49780: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49773: ---------------------------------------------------------------------------------------------------
49774: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49775: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49777: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49779: -- 5132302
49780: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49774: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49775: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49777: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49779: -- 5132302
49780: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49782:
49776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49777: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49779: -- 5132302
49780: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49782:
49783: END IF;
49784:
49777: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49779: -- 5132302
49780: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49782:
49783: END IF;
49784:
49785: -- 4955764
49782:
49783: END IF;
49784:
49785: -- 4955764
49786: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49787: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49788:
49789:
49790: XLA_AE_LINES_PKG.ValidateCurrentLine;
49786: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49787: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49788:
49789:
49790: XLA_AE_LINES_PKG.ValidateCurrentLine;
49791: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49792:
49793: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49794: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49787: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49788:
49789:
49790: XLA_AE_LINES_PKG.ValidateCurrentLine;
49791: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49792:
49793: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49794: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49795: ,p_balance_type_code => l_balance_type_code);
49938: --
49939: -- bulk performance
49940: --
49941: l_balance_type_code VARCHAR2(1);
49942: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
49943: l_log_module VARCHAR2(240);
49944:
49945: --
49946: -- Upgrade strategy
50008: ') = 'N'
50009: THEN
50010:
50011: --
50012: XLA_AE_LINES_PKG.SetNewLine;
50013:
50014: p_balance_type_code := l_balance_type_code;
50015: -- set the flag so later we will know whether the gain loss line needs to be created
50016:
50020:
50021: --
50022: -- bulk performance
50023: --
50024: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
50025: p_header_num => 0); -- 4262811
50026: --
50027: -- set accounting line options
50028: --
50025: p_header_num => 0); -- 4262811
50026: --
50027: -- set accounting line options
50028: --
50029: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
50030: p_natural_side_code => 'C'
50031: , p_gain_or_loss_flag => 'N'
50032: , p_gl_transfer_mode_code => 'S'
50033: , p_acct_entry_type_code => 'A'
50039: --
50040: --
50041: -- set accounting line type info
50042: --
50043: xla_ae_lines_pkg.SetAcctLineType
50044: (p_component_type => l_component_type
50045: ,p_event_type_code => l_event_type_code
50046: ,p_line_definition_owner_code => l_line_definition_owner_code
50047: ,p_line_definition_code => l_line_definition_code
50053: ,p_event_class_code => l_event_class_code);
50054: --
50055: -- set accounting class
50056: --
50057: xla_ae_lines_pkg.SetAcctClass(
50058: p_accounting_class_code => 'CASH'
50059: , p_ae_header_id => l_ae_header_id
50060: );
50061:
50061:
50062: --
50063: -- set rounding class
50064: --
50065: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50066: 'RECEIVABLE';
50067:
50068: --
50069: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50065: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50066: 'RECEIVABLE';
50067:
50068: --
50069: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50070: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50071: --
50072: -- bulk performance
50073: --
50066: 'RECEIVABLE';
50067:
50068: --
50069: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50070: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50071: --
50072: -- bulk performance
50073: --
50074: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50070: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50071: --
50072: -- bulk performance
50073: --
50074: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50075:
50076: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50077: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50078:
50072: -- bulk performance
50073: --
50074: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50075:
50076: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50077: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50078:
50079: -- 4955764
50080: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50076: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50077: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50078:
50079: -- 4955764
50080: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50081: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
50082:
50083: -- 4458381 Public Sector Enh
50084:
50120: l_rec_acct_attrs.array_num_value(15) := p_source_64;
50121: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50122: l_rec_acct_attrs.array_char_value(16) := p_source_65;
50123:
50124: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50125: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50126:
50127: ---------------------------------------------------------------------------------------------------------------
50128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50121: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50122: l_rec_acct_attrs.array_char_value(16) := p_source_65;
50123:
50124: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50125: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50126:
50127: ---------------------------------------------------------------------------------------------------------------
50128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50129: ---------------------------------------------------------------------------------------------------------------
50124: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50125: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50126:
50127: ---------------------------------------------------------------------------------------------------------------
50128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50129: ---------------------------------------------------------------------------------------------------------------
50130: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50131:
50132: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50126:
50127: ---------------------------------------------------------------------------------------------------------------
50128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50129: ---------------------------------------------------------------------------------------------------------------
50130: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50131:
50132: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50133: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50134:
50128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50129: ---------------------------------------------------------------------------------------------------------------
50130: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50131:
50132: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50133: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50134:
50135: IF xla_accounting_cache_pkg.GetValueChar
50136: (p_source_code => 'LEDGER_CATEGORY_CODE'
50129: ---------------------------------------------------------------------------------------------------------------
50130: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50131:
50132: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50133: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50134:
50135: IF xla_accounting_cache_pkg.GetValueChar
50136: (p_source_code => 'LEDGER_CATEGORY_CODE'
50137: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
50140: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
50141: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
50142: )
50143: THEN
50144: xla_ae_lines_pkg.BflowUpgEntry
50145: (p_business_method_code => l_bflow_method_code
50146: ,p_business_class_code => l_bflow_class_code
50147: ,p_balance_type => l_balance_type_code);
50148: ELSE
50180: , x_value_type_code => l_adr_value_type_code
50181: , p_side => 'NA'
50182: );
50183:
50184: xla_ae_lines_pkg.set_ccid(
50185: p_code_combination_id => l_ccid
50186: , p_value_type_code => l_adr_value_type_code
50187: , p_transaction_coa_id => l_adr_transaction_coa_id
50188: , p_accounting_coa_id => l_adr_accounting_coa_id
50216: xla_accounting_err_pkg.build_message
50217: (p_appli_s_name => 'XLA'
50218: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
50219: ,p_token_1 => 'LINE_NUMBER'
50220: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
50221: ,p_token_2 => 'LINE_TYPE_NAME'
50222: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
50223: l_component_type
50224: ,l_component_code
50252: --
50253: --
50254: ------------------------------------------------------------------------------------------------
50255: -- 4219869 Business Flow
50256: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50257: -- Prior Entry. Currently, the following code is always generated.
50258: ------------------------------------------------------------------------------------------------
50259: XLA_AE_LINES_PKG.ValidateCurrentLine;
50260:
50255: -- 4219869 Business Flow
50256: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50257: -- Prior Entry. Currently, the following code is always generated.
50258: ------------------------------------------------------------------------------------------------
50259: XLA_AE_LINES_PKG.ValidateCurrentLine;
50260:
50261: ------------------------------------------------------------------------------------
50262: -- 4219869 Business Flow
50263: -- Populated credit and debit amounts -- Need to generate this within IF
50261: ------------------------------------------------------------------------------------
50262: -- 4219869 Business Flow
50263: -- Populated credit and debit amounts -- Need to generate this within IF
50264: ------------------------------------------------------------------------------------
50265: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50266:
50267: ----------------------------------------------------------------------------------
50268: -- 4219869 Business Flow
50269: -- Update journal entry status -- Need to generate this within IF
50293: -- To allow MPA report to determine if it should generate report process
50294: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50295: ------------------------------------------------------------------------------------------
50296:
50297: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50298: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50299: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50300: -- call ADRs
50301: -- Bug 4922099
50294: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50295: ------------------------------------------------------------------------------------------
50296:
50297: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50298: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50299: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50300: -- call ADRs
50301: -- Bug 4922099
50302: --
50318: , x_value_type_code => l_adr_value_type_code
50319: , p_side => 'NA'
50320: );
50321:
50322: xla_ae_lines_pkg.set_ccid(
50323: p_code_combination_id => l_ccid
50324: , p_value_type_code => l_adr_value_type_code
50325: , p_transaction_coa_id => l_adr_transaction_coa_id
50326: , p_accounting_coa_id => l_adr_accounting_coa_id
50341:
50342: --
50343: -- Update the line information that should be overwritten
50344: --
50345: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50346: p_header_num => 1);
50347: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50348:
50349: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50343: -- Update the line information that should be overwritten
50344: --
50345: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50346: p_header_num => 1);
50347: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50348:
50349: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50350:
50351: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50345: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50346: p_header_num => 1);
50347: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50348:
50349: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50350:
50351: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50352: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50353: END IF;
50348:
50349: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50350:
50351: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50352: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50353: END IF;
50354:
50355: --
50356: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50355: --
50356: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50357: --
50358: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
50359: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
50360: ELSE
50361: ---------------------------------------------------------------------------------------------------
50362: -- 4262811a Switch Sign
50363: ---------------------------------------------------------------------------------------------------
50360: ELSE
50361: ---------------------------------------------------------------------------------------------------
50362: -- 4262811a Switch Sign
50363: ---------------------------------------------------------------------------------------------------
50364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50361: ---------------------------------------------------------------------------------------------------
50362: -- 4262811a Switch Sign
50363: ---------------------------------------------------------------------------------------------------
50364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50369: -- 5132302
50362: -- 4262811a Switch Sign
50363: ---------------------------------------------------------------------------------------------------
50364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50369: -- 5132302
50370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50363: ---------------------------------------------------------------------------------------------------
50364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50369: -- 5132302
50370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50369: -- 5132302
50370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50372:
50366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50369: -- 5132302
50370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50372:
50373: END IF;
50374:
50367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50369: -- 5132302
50370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50372:
50373: END IF;
50374:
50375: -- 4955764
50372:
50373: END IF;
50374:
50375: -- 4955764
50376: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50377: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50378:
50379:
50380: XLA_AE_LINES_PKG.ValidateCurrentLine;
50376: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50377: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50378:
50379:
50380: XLA_AE_LINES_PKG.ValidateCurrentLine;
50381: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50382:
50383: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50384: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50377: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50378:
50379:
50380: XLA_AE_LINES_PKG.ValidateCurrentLine;
50381: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50382:
50383: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50384: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50385: ,p_balance_type_code => l_balance_type_code);
50530: --
50531: -- bulk performance
50532: --
50533: l_balance_type_code VARCHAR2(1);
50534: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
50535: l_log_module VARCHAR2(240);
50536:
50537: --
50538: -- Upgrade strategy
50602: ') = 'N'
50603: THEN
50604:
50605: --
50606: XLA_AE_LINES_PKG.SetNewLine;
50607:
50608: p_balance_type_code := l_balance_type_code;
50609: -- set the flag so later we will know whether the gain loss line needs to be created
50610:
50614:
50615: --
50616: -- bulk performance
50617: --
50618: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
50619: p_header_num => 0); -- 4262811
50620: --
50621: -- set accounting line options
50622: --
50619: p_header_num => 0); -- 4262811
50620: --
50621: -- set accounting line options
50622: --
50623: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
50624: p_natural_side_code => 'C'
50625: , p_gain_or_loss_flag => 'N'
50626: , p_gl_transfer_mode_code => 'S'
50627: , p_acct_entry_type_code => 'A'
50633: --
50634: --
50635: -- set accounting line type info
50636: --
50637: xla_ae_lines_pkg.SetAcctLineType
50638: (p_component_type => l_component_type
50639: ,p_event_type_code => l_event_type_code
50640: ,p_line_definition_owner_code => l_line_definition_owner_code
50641: ,p_line_definition_code => l_line_definition_code
50647: ,p_event_class_code => l_event_class_code);
50648: --
50649: -- set accounting class
50650: --
50651: xla_ae_lines_pkg.SetAcctClass(
50652: p_accounting_class_code => 'CLAIM'
50653: , p_ae_header_id => l_ae_header_id
50654: );
50655:
50655:
50656: --
50657: -- set rounding class
50658: --
50659: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50660: 'RECEIVABLE';
50661:
50662: --
50663: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50659: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50660: 'RECEIVABLE';
50661:
50662: --
50663: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50664: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50665: --
50666: -- bulk performance
50667: --
50660: 'RECEIVABLE';
50661:
50662: --
50663: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50664: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50665: --
50666: -- bulk performance
50667: --
50668: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50664: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50665: --
50666: -- bulk performance
50667: --
50668: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50669:
50670: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50671: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50672:
50666: -- bulk performance
50667: --
50668: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50669:
50670: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50671: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50672:
50673: -- 4955764
50674: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50670: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50671: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50672:
50673: -- 4955764
50674: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50675: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
50676:
50677: -- 4458381 Public Sector Enh
50678:
50714: l_rec_acct_attrs.array_num_value(15) := p_source_64;
50715: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50716: l_rec_acct_attrs.array_char_value(16) := p_source_65;
50717:
50718: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50719: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50720:
50721: ---------------------------------------------------------------------------------------------------------------
50722: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50715: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50716: l_rec_acct_attrs.array_char_value(16) := p_source_65;
50717:
50718: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50719: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50720:
50721: ---------------------------------------------------------------------------------------------------------------
50722: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50723: ---------------------------------------------------------------------------------------------------------------
50718: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50719: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50720:
50721: ---------------------------------------------------------------------------------------------------------------
50722: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50723: ---------------------------------------------------------------------------------------------------------------
50724: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50725:
50726: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50720:
50721: ---------------------------------------------------------------------------------------------------------------
50722: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50723: ---------------------------------------------------------------------------------------------------------------
50724: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50725:
50726: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50727: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50728:
50722: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50723: ---------------------------------------------------------------------------------------------------------------
50724: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50725:
50726: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50727: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50728:
50729: IF xla_accounting_cache_pkg.GetValueChar
50730: (p_source_code => 'LEDGER_CATEGORY_CODE'
50723: ---------------------------------------------------------------------------------------------------------------
50724: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50725:
50726: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50727: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50728:
50729: IF xla_accounting_cache_pkg.GetValueChar
50730: (p_source_code => 'LEDGER_CATEGORY_CODE'
50731: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
50734: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
50735: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
50736: )
50737: THEN
50738: xla_ae_lines_pkg.BflowUpgEntry
50739: (p_business_method_code => l_bflow_method_code
50740: ,p_business_class_code => l_bflow_class_code
50741: ,p_balance_type => l_balance_type_code);
50742: ELSE
50774: , x_value_type_code => l_adr_value_type_code
50775: , p_side => 'NA'
50776: );
50777:
50778: xla_ae_lines_pkg.set_ccid(
50779: p_code_combination_id => l_ccid
50780: , p_value_type_code => l_adr_value_type_code
50781: , p_transaction_coa_id => l_adr_transaction_coa_id
50782: , p_accounting_coa_id => l_adr_accounting_coa_id
50810: xla_accounting_err_pkg.build_message
50811: (p_appli_s_name => 'XLA'
50812: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
50813: ,p_token_1 => 'LINE_NUMBER'
50814: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
50815: ,p_token_2 => 'LINE_TYPE_NAME'
50816: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
50817: l_component_type
50818: ,l_component_code
50846: --
50847: --
50848: ------------------------------------------------------------------------------------------------
50849: -- 4219869 Business Flow
50850: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50851: -- Prior Entry. Currently, the following code is always generated.
50852: ------------------------------------------------------------------------------------------------
50853: XLA_AE_LINES_PKG.ValidateCurrentLine;
50854:
50849: -- 4219869 Business Flow
50850: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50851: -- Prior Entry. Currently, the following code is always generated.
50852: ------------------------------------------------------------------------------------------------
50853: XLA_AE_LINES_PKG.ValidateCurrentLine;
50854:
50855: ------------------------------------------------------------------------------------
50856: -- 4219869 Business Flow
50857: -- Populated credit and debit amounts -- Need to generate this within IF
50855: ------------------------------------------------------------------------------------
50856: -- 4219869 Business Flow
50857: -- Populated credit and debit amounts -- Need to generate this within IF
50858: ------------------------------------------------------------------------------------
50859: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50860:
50861: ----------------------------------------------------------------------------------
50862: -- 4219869 Business Flow
50863: -- Update journal entry status -- Need to generate this within IF
50887: -- To allow MPA report to determine if it should generate report process
50888: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50889: ------------------------------------------------------------------------------------------
50890:
50891: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50892: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50893: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50894: -- call ADRs
50895: -- Bug 4922099
50888: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50889: ------------------------------------------------------------------------------------------
50890:
50891: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50892: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50893: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50894: -- call ADRs
50895: -- Bug 4922099
50896: --
50912: , x_value_type_code => l_adr_value_type_code
50913: , p_side => 'NA'
50914: );
50915:
50916: xla_ae_lines_pkg.set_ccid(
50917: p_code_combination_id => l_ccid
50918: , p_value_type_code => l_adr_value_type_code
50919: , p_transaction_coa_id => l_adr_transaction_coa_id
50920: , p_accounting_coa_id => l_adr_accounting_coa_id
50935:
50936: --
50937: -- Update the line information that should be overwritten
50938: --
50939: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50940: p_header_num => 1);
50941: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50942:
50943: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50937: -- Update the line information that should be overwritten
50938: --
50939: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50940: p_header_num => 1);
50941: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50942:
50943: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50944:
50945: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50939: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50940: p_header_num => 1);
50941: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50942:
50943: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50944:
50945: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50946: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50947: END IF;
50942:
50943: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50944:
50945: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50946: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50947: END IF;
50948:
50949: --
50950: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50949: --
50950: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50951: --
50952: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
50953: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
50954: ELSE
50955: ---------------------------------------------------------------------------------------------------
50956: -- 4262811a Switch Sign
50957: ---------------------------------------------------------------------------------------------------
50954: ELSE
50955: ---------------------------------------------------------------------------------------------------
50956: -- 4262811a Switch Sign
50957: ---------------------------------------------------------------------------------------------------
50958: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50959: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50960: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50961: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50962: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50955: ---------------------------------------------------------------------------------------------------
50956: -- 4262811a Switch Sign
50957: ---------------------------------------------------------------------------------------------------
50958: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50959: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50960: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50961: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50962: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50963: -- 5132302
50956: -- 4262811a Switch Sign
50957: ---------------------------------------------------------------------------------------------------
50958: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50959: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50960: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50961: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50962: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50963: -- 5132302
50964: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50957: ---------------------------------------------------------------------------------------------------
50958: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50959: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50960: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50961: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50962: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50963: -- 5132302
50964: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50965: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50958: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50959: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50960: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50961: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50962: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50963: -- 5132302
50964: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50965: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50966:
50960: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50961: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50962: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50963: -- 5132302
50964: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50965: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50966:
50967: END IF;
50968:
50961: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50962: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50963: -- 5132302
50964: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50965: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50966:
50967: END IF;
50968:
50969: -- 4955764
50966:
50967: END IF;
50968:
50969: -- 4955764
50970: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50971: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50972:
50973:
50974: XLA_AE_LINES_PKG.ValidateCurrentLine;
50970: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50971: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50972:
50973:
50974: XLA_AE_LINES_PKG.ValidateCurrentLine;
50975: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50976:
50977: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50978: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50971: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50972:
50973:
50974: XLA_AE_LINES_PKG.ValidateCurrentLine;
50975: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50976:
50977: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50978: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50979: ,p_balance_type_code => l_balance_type_code);
51124: --
51125: -- bulk performance
51126: --
51127: l_balance_type_code VARCHAR2(1);
51128: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
51129: l_log_module VARCHAR2(240);
51130:
51131: --
51132: -- Upgrade strategy
51196: ') = 'N'
51197: THEN
51198:
51199: --
51200: XLA_AE_LINES_PKG.SetNewLine;
51201:
51202: p_balance_type_code := l_balance_type_code;
51203: -- set the flag so later we will know whether the gain loss line needs to be created
51204:
51208:
51209: --
51210: -- bulk performance
51211: --
51212: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
51213: p_header_num => 0); -- 4262811
51214: --
51215: -- set accounting line options
51216: --
51213: p_header_num => 0); -- 4262811
51214: --
51215: -- set accounting line options
51216: --
51217: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
51218: p_natural_side_code => 'C'
51219: , p_gain_or_loss_flag => 'N'
51220: , p_gl_transfer_mode_code => 'S'
51221: , p_acct_entry_type_code => 'A'
51227: --
51228: --
51229: -- set accounting line type info
51230: --
51231: xla_ae_lines_pkg.SetAcctLineType
51232: (p_component_type => l_component_type
51233: ,p_event_type_code => l_event_type_code
51234: ,p_line_definition_owner_code => l_line_definition_owner_code
51235: ,p_line_definition_code => l_line_definition_code
51241: ,p_event_class_code => l_event_class_code);
51242: --
51243: -- set accounting class
51244: --
51245: xla_ae_lines_pkg.SetAcctClass(
51246: p_accounting_class_code => 'CLAIM'
51247: , p_ae_header_id => l_ae_header_id
51248: );
51249:
51249:
51250: --
51251: -- set rounding class
51252: --
51253: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51254: 'RECEIVABLE';
51255:
51256: --
51257: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51253: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51254: 'RECEIVABLE';
51255:
51256: --
51257: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51258: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51259: --
51260: -- bulk performance
51261: --
51254: 'RECEIVABLE';
51255:
51256: --
51257: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51258: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51259: --
51260: -- bulk performance
51261: --
51262: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51258: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51259: --
51260: -- bulk performance
51261: --
51262: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51263:
51264: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51265: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51266:
51260: -- bulk performance
51261: --
51262: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51263:
51264: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51265: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51266:
51267: -- 4955764
51268: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51264: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51265: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51266:
51267: -- 4955764
51268: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51269: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
51270:
51271: -- 4458381 Public Sector Enh
51272:
51308: l_rec_acct_attrs.array_num_value(15) := p_source_64;
51309: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51310: l_rec_acct_attrs.array_char_value(16) := p_source_65;
51311:
51312: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51313: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51314:
51315: ---------------------------------------------------------------------------------------------------------------
51316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51309: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51310: l_rec_acct_attrs.array_char_value(16) := p_source_65;
51311:
51312: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51313: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51314:
51315: ---------------------------------------------------------------------------------------------------------------
51316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51317: ---------------------------------------------------------------------------------------------------------------
51312: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51313: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51314:
51315: ---------------------------------------------------------------------------------------------------------------
51316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51317: ---------------------------------------------------------------------------------------------------------------
51318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51319:
51320: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51314:
51315: ---------------------------------------------------------------------------------------------------------------
51316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51317: ---------------------------------------------------------------------------------------------------------------
51318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51319:
51320: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51321: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51322:
51316: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51317: ---------------------------------------------------------------------------------------------------------------
51318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51319:
51320: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51321: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51322:
51323: IF xla_accounting_cache_pkg.GetValueChar
51324: (p_source_code => 'LEDGER_CATEGORY_CODE'
51317: ---------------------------------------------------------------------------------------------------------------
51318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51319:
51320: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51321: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51322:
51323: IF xla_accounting_cache_pkg.GetValueChar
51324: (p_source_code => 'LEDGER_CATEGORY_CODE'
51325: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
51328: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
51329: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
51330: )
51331: THEN
51332: xla_ae_lines_pkg.BflowUpgEntry
51333: (p_business_method_code => l_bflow_method_code
51334: ,p_business_class_code => l_bflow_class_code
51335: ,p_balance_type => l_balance_type_code);
51336: ELSE
51368: , x_value_type_code => l_adr_value_type_code
51369: , p_side => 'NA'
51370: );
51371:
51372: xla_ae_lines_pkg.set_ccid(
51373: p_code_combination_id => l_ccid
51374: , p_value_type_code => l_adr_value_type_code
51375: , p_transaction_coa_id => l_adr_transaction_coa_id
51376: , p_accounting_coa_id => l_adr_accounting_coa_id
51404: xla_accounting_err_pkg.build_message
51405: (p_appli_s_name => 'XLA'
51406: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
51407: ,p_token_1 => 'LINE_NUMBER'
51408: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
51409: ,p_token_2 => 'LINE_TYPE_NAME'
51410: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
51411: l_component_type
51412: ,l_component_code
51440: --
51441: --
51442: ------------------------------------------------------------------------------------------------
51443: -- 4219869 Business Flow
51444: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51445: -- Prior Entry. Currently, the following code is always generated.
51446: ------------------------------------------------------------------------------------------------
51447: XLA_AE_LINES_PKG.ValidateCurrentLine;
51448:
51443: -- 4219869 Business Flow
51444: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51445: -- Prior Entry. Currently, the following code is always generated.
51446: ------------------------------------------------------------------------------------------------
51447: XLA_AE_LINES_PKG.ValidateCurrentLine;
51448:
51449: ------------------------------------------------------------------------------------
51450: -- 4219869 Business Flow
51451: -- Populated credit and debit amounts -- Need to generate this within IF
51449: ------------------------------------------------------------------------------------
51450: -- 4219869 Business Flow
51451: -- Populated credit and debit amounts -- Need to generate this within IF
51452: ------------------------------------------------------------------------------------
51453: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51454:
51455: ----------------------------------------------------------------------------------
51456: -- 4219869 Business Flow
51457: -- Update journal entry status -- Need to generate this within IF
51481: -- To allow MPA report to determine if it should generate report process
51482: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51483: ------------------------------------------------------------------------------------------
51484:
51485: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51486: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51487: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51488: -- call ADRs
51489: -- Bug 4922099
51482: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51483: ------------------------------------------------------------------------------------------
51484:
51485: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51486: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51487: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51488: -- call ADRs
51489: -- Bug 4922099
51490: --
51506: , x_value_type_code => l_adr_value_type_code
51507: , p_side => 'NA'
51508: );
51509:
51510: xla_ae_lines_pkg.set_ccid(
51511: p_code_combination_id => l_ccid
51512: , p_value_type_code => l_adr_value_type_code
51513: , p_transaction_coa_id => l_adr_transaction_coa_id
51514: , p_accounting_coa_id => l_adr_accounting_coa_id
51529:
51530: --
51531: -- Update the line information that should be overwritten
51532: --
51533: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51534: p_header_num => 1);
51535: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51536:
51537: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51531: -- Update the line information that should be overwritten
51532: --
51533: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51534: p_header_num => 1);
51535: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51536:
51537: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51538:
51539: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51533: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51534: p_header_num => 1);
51535: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51536:
51537: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51538:
51539: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51540: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51541: END IF;
51536:
51537: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51538:
51539: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51540: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51541: END IF;
51542:
51543: --
51544: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51543: --
51544: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51545: --
51546: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
51547: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
51548: ELSE
51549: ---------------------------------------------------------------------------------------------------
51550: -- 4262811a Switch Sign
51551: ---------------------------------------------------------------------------------------------------
51548: ELSE
51549: ---------------------------------------------------------------------------------------------------
51550: -- 4262811a Switch Sign
51551: ---------------------------------------------------------------------------------------------------
51552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51549: ---------------------------------------------------------------------------------------------------
51550: -- 4262811a Switch Sign
51551: ---------------------------------------------------------------------------------------------------
51552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51557: -- 5132302
51550: -- 4262811a Switch Sign
51551: ---------------------------------------------------------------------------------------------------
51552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51557: -- 5132302
51558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51551: ---------------------------------------------------------------------------------------------------
51552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51557: -- 5132302
51558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51559: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51552: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51553: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51557: -- 5132302
51558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51559: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51560:
51554: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51557: -- 5132302
51558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51559: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51560:
51561: END IF;
51562:
51555: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51556: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51557: -- 5132302
51558: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51559: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51560:
51561: END IF;
51562:
51563: -- 4955764
51560:
51561: END IF;
51562:
51563: -- 4955764
51564: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51565: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51566:
51567:
51568: XLA_AE_LINES_PKG.ValidateCurrentLine;
51564: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51565: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51566:
51567:
51568: XLA_AE_LINES_PKG.ValidateCurrentLine;
51569: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51570:
51571: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51572: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51565: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51566:
51567:
51568: XLA_AE_LINES_PKG.ValidateCurrentLine;
51569: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51570:
51571: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51572: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51573: ,p_balance_type_code => l_balance_type_code);
51718: --
51719: -- bulk performance
51720: --
51721: l_balance_type_code VARCHAR2(1);
51722: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
51723: l_log_module VARCHAR2(240);
51724:
51725: --
51726: -- Upgrade strategy
51790: ') = 'N'
51791: THEN
51792:
51793: --
51794: XLA_AE_LINES_PKG.SetNewLine;
51795:
51796: p_balance_type_code := l_balance_type_code;
51797: -- set the flag so later we will know whether the gain loss line needs to be created
51798:
51802:
51803: --
51804: -- bulk performance
51805: --
51806: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
51807: p_header_num => 0); -- 4262811
51808: --
51809: -- set accounting line options
51810: --
51807: p_header_num => 0); -- 4262811
51808: --
51809: -- set accounting line options
51810: --
51811: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
51812: p_natural_side_code => 'C'
51813: , p_gain_or_loss_flag => 'N'
51814: , p_gl_transfer_mode_code => 'S'
51815: , p_acct_entry_type_code => 'A'
51821: --
51822: --
51823: -- set accounting line type info
51824: --
51825: xla_ae_lines_pkg.SetAcctLineType
51826: (p_component_type => l_component_type
51827: ,p_event_type_code => l_event_type_code
51828: ,p_line_definition_owner_code => l_line_definition_owner_code
51829: ,p_line_definition_code => l_line_definition_code
51835: ,p_event_class_code => l_event_class_code);
51836: --
51837: -- set accounting class
51838: --
51839: xla_ae_lines_pkg.SetAcctClass(
51840: p_accounting_class_code => 'CLAIM'
51841: , p_ae_header_id => l_ae_header_id
51842: );
51843:
51843:
51844: --
51845: -- set rounding class
51846: --
51847: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51848: 'RECEIVABLE';
51849:
51850: --
51851: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51847: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51848: 'RECEIVABLE';
51849:
51850: --
51851: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51852: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51853: --
51854: -- bulk performance
51855: --
51848: 'RECEIVABLE';
51849:
51850: --
51851: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51852: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51853: --
51854: -- bulk performance
51855: --
51856: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51852: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51853: --
51854: -- bulk performance
51855: --
51856: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51857:
51858: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51859: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51860:
51854: -- bulk performance
51855: --
51856: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51857:
51858: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51859: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51860:
51861: -- 4955764
51862: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51858: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51859: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51860:
51861: -- 4955764
51862: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51863: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
51864:
51865: -- 4458381 Public Sector Enh
51866:
51902: l_rec_acct_attrs.array_num_value(15) := p_source_64;
51903: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51904: l_rec_acct_attrs.array_char_value(16) := p_source_65;
51905:
51906: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51907: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51908:
51909: ---------------------------------------------------------------------------------------------------------------
51910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51903: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51904: l_rec_acct_attrs.array_char_value(16) := p_source_65;
51905:
51906: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51907: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51908:
51909: ---------------------------------------------------------------------------------------------------------------
51910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51911: ---------------------------------------------------------------------------------------------------------------
51906: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51907: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51908:
51909: ---------------------------------------------------------------------------------------------------------------
51910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51911: ---------------------------------------------------------------------------------------------------------------
51912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51913:
51914: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51908:
51909: ---------------------------------------------------------------------------------------------------------------
51910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51911: ---------------------------------------------------------------------------------------------------------------
51912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51913:
51914: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51915: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51916:
51910: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51911: ---------------------------------------------------------------------------------------------------------------
51912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51913:
51914: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51915: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51916:
51917: IF xla_accounting_cache_pkg.GetValueChar
51918: (p_source_code => 'LEDGER_CATEGORY_CODE'
51911: ---------------------------------------------------------------------------------------------------------------
51912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51913:
51914: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51915: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51916:
51917: IF xla_accounting_cache_pkg.GetValueChar
51918: (p_source_code => 'LEDGER_CATEGORY_CODE'
51919: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
51922: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
51923: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
51924: )
51925: THEN
51926: xla_ae_lines_pkg.BflowUpgEntry
51927: (p_business_method_code => l_bflow_method_code
51928: ,p_business_class_code => l_bflow_class_code
51929: ,p_balance_type => l_balance_type_code);
51930: ELSE
51962: , x_value_type_code => l_adr_value_type_code
51963: , p_side => 'NA'
51964: );
51965:
51966: xla_ae_lines_pkg.set_ccid(
51967: p_code_combination_id => l_ccid
51968: , p_value_type_code => l_adr_value_type_code
51969: , p_transaction_coa_id => l_adr_transaction_coa_id
51970: , p_accounting_coa_id => l_adr_accounting_coa_id
51998: xla_accounting_err_pkg.build_message
51999: (p_appli_s_name => 'XLA'
52000: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
52001: ,p_token_1 => 'LINE_NUMBER'
52002: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
52003: ,p_token_2 => 'LINE_TYPE_NAME'
52004: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
52005: l_component_type
52006: ,l_component_code
52034: --
52035: --
52036: ------------------------------------------------------------------------------------------------
52037: -- 4219869 Business Flow
52038: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52039: -- Prior Entry. Currently, the following code is always generated.
52040: ------------------------------------------------------------------------------------------------
52041: XLA_AE_LINES_PKG.ValidateCurrentLine;
52042:
52037: -- 4219869 Business Flow
52038: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52039: -- Prior Entry. Currently, the following code is always generated.
52040: ------------------------------------------------------------------------------------------------
52041: XLA_AE_LINES_PKG.ValidateCurrentLine;
52042:
52043: ------------------------------------------------------------------------------------
52044: -- 4219869 Business Flow
52045: -- Populated credit and debit amounts -- Need to generate this within IF
52043: ------------------------------------------------------------------------------------
52044: -- 4219869 Business Flow
52045: -- Populated credit and debit amounts -- Need to generate this within IF
52046: ------------------------------------------------------------------------------------
52047: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52048:
52049: ----------------------------------------------------------------------------------
52050: -- 4219869 Business Flow
52051: -- Update journal entry status -- Need to generate this within IF
52075: -- To allow MPA report to determine if it should generate report process
52076: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52077: ------------------------------------------------------------------------------------------
52078:
52079: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52080: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52081: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52082: -- call ADRs
52083: -- Bug 4922099
52076: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52077: ------------------------------------------------------------------------------------------
52078:
52079: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52080: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52081: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52082: -- call ADRs
52083: -- Bug 4922099
52084: --
52100: , x_value_type_code => l_adr_value_type_code
52101: , p_side => 'NA'
52102: );
52103:
52104: xla_ae_lines_pkg.set_ccid(
52105: p_code_combination_id => l_ccid
52106: , p_value_type_code => l_adr_value_type_code
52107: , p_transaction_coa_id => l_adr_transaction_coa_id
52108: , p_accounting_coa_id => l_adr_accounting_coa_id
52123:
52124: --
52125: -- Update the line information that should be overwritten
52126: --
52127: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52128: p_header_num => 1);
52129: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52130:
52131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52125: -- Update the line information that should be overwritten
52126: --
52127: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52128: p_header_num => 1);
52129: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52130:
52131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52132:
52133: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52127: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52128: p_header_num => 1);
52129: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52130:
52131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52132:
52133: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52134: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52135: END IF;
52130:
52131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52132:
52133: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52134: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52135: END IF;
52136:
52137: --
52138: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52137: --
52138: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52139: --
52140: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
52141: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
52142: ELSE
52143: ---------------------------------------------------------------------------------------------------
52144: -- 4262811a Switch Sign
52145: ---------------------------------------------------------------------------------------------------
52142: ELSE
52143: ---------------------------------------------------------------------------------------------------
52144: -- 4262811a Switch Sign
52145: ---------------------------------------------------------------------------------------------------
52146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52143: ---------------------------------------------------------------------------------------------------
52144: -- 4262811a Switch Sign
52145: ---------------------------------------------------------------------------------------------------
52146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52151: -- 5132302
52144: -- 4262811a Switch Sign
52145: ---------------------------------------------------------------------------------------------------
52146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52151: -- 5132302
52152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52145: ---------------------------------------------------------------------------------------------------
52146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52151: -- 5132302
52152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52153: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52146: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52147: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52151: -- 5132302
52152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52153: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52154:
52148: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52151: -- 5132302
52152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52153: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52154:
52155: END IF;
52156:
52149: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52150: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52151: -- 5132302
52152: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52153: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52154:
52155: END IF;
52156:
52157: -- 4955764
52154:
52155: END IF;
52156:
52157: -- 4955764
52158: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52159: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52160:
52161:
52162: XLA_AE_LINES_PKG.ValidateCurrentLine;
52158: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52159: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52160:
52161:
52162: XLA_AE_LINES_PKG.ValidateCurrentLine;
52163: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52164:
52165: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52166: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52159: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52160:
52161:
52162: XLA_AE_LINES_PKG.ValidateCurrentLine;
52163: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52164:
52165: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52166: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52167: ,p_balance_type_code => l_balance_type_code);
52310: --
52311: -- bulk performance
52312: --
52313: l_balance_type_code VARCHAR2(1);
52314: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
52315: l_log_module VARCHAR2(240);
52316:
52317: --
52318: -- Upgrade strategy
52380: ') = 'N'
52381: THEN
52382:
52383: --
52384: XLA_AE_LINES_PKG.SetNewLine;
52385:
52386: p_balance_type_code := l_balance_type_code;
52387: -- set the flag so later we will know whether the gain loss line needs to be created
52388:
52392:
52393: --
52394: -- bulk performance
52395: --
52396: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
52397: p_header_num => 0); -- 4262811
52398: --
52399: -- set accounting line options
52400: --
52397: p_header_num => 0); -- 4262811
52398: --
52399: -- set accounting line options
52400: --
52401: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
52402: p_natural_side_code => 'C'
52403: , p_gain_or_loss_flag => 'N'
52404: , p_gl_transfer_mode_code => 'S'
52405: , p_acct_entry_type_code => 'A'
52411: --
52412: --
52413: -- set accounting line type info
52414: --
52415: xla_ae_lines_pkg.SetAcctLineType
52416: (p_component_type => l_component_type
52417: ,p_event_type_code => l_event_type_code
52418: ,p_line_definition_owner_code => l_line_definition_owner_code
52419: ,p_line_definition_code => l_line_definition_code
52425: ,p_event_class_code => l_event_class_code);
52426: --
52427: -- set accounting class
52428: --
52429: xla_ae_lines_pkg.SetAcctClass(
52430: p_accounting_class_code => 'CONFIRMATION'
52431: , p_ae_header_id => l_ae_header_id
52432: );
52433:
52433:
52434: --
52435: -- set rounding class
52436: --
52437: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52438: 'RECEIVABLE';
52439:
52440: --
52441: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52437: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52438: 'RECEIVABLE';
52439:
52440: --
52441: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52442: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52443: --
52444: -- bulk performance
52445: --
52438: 'RECEIVABLE';
52439:
52440: --
52441: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52442: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52443: --
52444: -- bulk performance
52445: --
52446: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52442: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52443: --
52444: -- bulk performance
52445: --
52446: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52447:
52448: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52449: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52450:
52444: -- bulk performance
52445: --
52446: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52447:
52448: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52449: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52450:
52451: -- 4955764
52452: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52448: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52449: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52450:
52451: -- 4955764
52452: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52453: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
52454:
52455: -- 4458381 Public Sector Enh
52456:
52492: l_rec_acct_attrs.array_num_value(15) := p_source_64;
52493: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52494: l_rec_acct_attrs.array_char_value(16) := p_source_65;
52495:
52496: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52497: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52498:
52499: ---------------------------------------------------------------------------------------------------------------
52500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52493: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52494: l_rec_acct_attrs.array_char_value(16) := p_source_65;
52495:
52496: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52497: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52498:
52499: ---------------------------------------------------------------------------------------------------------------
52500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52501: ---------------------------------------------------------------------------------------------------------------
52496: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52497: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52498:
52499: ---------------------------------------------------------------------------------------------------------------
52500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52501: ---------------------------------------------------------------------------------------------------------------
52502: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52503:
52504: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52498:
52499: ---------------------------------------------------------------------------------------------------------------
52500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52501: ---------------------------------------------------------------------------------------------------------------
52502: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52503:
52504: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52505: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52506:
52500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52501: ---------------------------------------------------------------------------------------------------------------
52502: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52503:
52504: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52505: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52506:
52507: IF xla_accounting_cache_pkg.GetValueChar
52508: (p_source_code => 'LEDGER_CATEGORY_CODE'
52501: ---------------------------------------------------------------------------------------------------------------
52502: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52503:
52504: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52505: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52506:
52507: IF xla_accounting_cache_pkg.GetValueChar
52508: (p_source_code => 'LEDGER_CATEGORY_CODE'
52509: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
52512: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
52513: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
52514: )
52515: THEN
52516: xla_ae_lines_pkg.BflowUpgEntry
52517: (p_business_method_code => l_bflow_method_code
52518: ,p_business_class_code => l_bflow_class_code
52519: ,p_balance_type => l_balance_type_code);
52520: ELSE
52552: , x_value_type_code => l_adr_value_type_code
52553: , p_side => 'NA'
52554: );
52555:
52556: xla_ae_lines_pkg.set_ccid(
52557: p_code_combination_id => l_ccid
52558: , p_value_type_code => l_adr_value_type_code
52559: , p_transaction_coa_id => l_adr_transaction_coa_id
52560: , p_accounting_coa_id => l_adr_accounting_coa_id
52588: xla_accounting_err_pkg.build_message
52589: (p_appli_s_name => 'XLA'
52590: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
52591: ,p_token_1 => 'LINE_NUMBER'
52592: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
52593: ,p_token_2 => 'LINE_TYPE_NAME'
52594: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
52595: l_component_type
52596: ,l_component_code
52624: --
52625: --
52626: ------------------------------------------------------------------------------------------------
52627: -- 4219869 Business Flow
52628: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52629: -- Prior Entry. Currently, the following code is always generated.
52630: ------------------------------------------------------------------------------------------------
52631: XLA_AE_LINES_PKG.ValidateCurrentLine;
52632:
52627: -- 4219869 Business Flow
52628: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52629: -- Prior Entry. Currently, the following code is always generated.
52630: ------------------------------------------------------------------------------------------------
52631: XLA_AE_LINES_PKG.ValidateCurrentLine;
52632:
52633: ------------------------------------------------------------------------------------
52634: -- 4219869 Business Flow
52635: -- Populated credit and debit amounts -- Need to generate this within IF
52633: ------------------------------------------------------------------------------------
52634: -- 4219869 Business Flow
52635: -- Populated credit and debit amounts -- Need to generate this within IF
52636: ------------------------------------------------------------------------------------
52637: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52638:
52639: ----------------------------------------------------------------------------------
52640: -- 4219869 Business Flow
52641: -- Update journal entry status -- Need to generate this within IF
52665: -- To allow MPA report to determine if it should generate report process
52666: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52667: ------------------------------------------------------------------------------------------
52668:
52669: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52670: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52671: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52672: -- call ADRs
52673: -- Bug 4922099
52666: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52667: ------------------------------------------------------------------------------------------
52668:
52669: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52670: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52671: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52672: -- call ADRs
52673: -- Bug 4922099
52674: --
52690: , x_value_type_code => l_adr_value_type_code
52691: , p_side => 'NA'
52692: );
52693:
52694: xla_ae_lines_pkg.set_ccid(
52695: p_code_combination_id => l_ccid
52696: , p_value_type_code => l_adr_value_type_code
52697: , p_transaction_coa_id => l_adr_transaction_coa_id
52698: , p_accounting_coa_id => l_adr_accounting_coa_id
52713:
52714: --
52715: -- Update the line information that should be overwritten
52716: --
52717: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52718: p_header_num => 1);
52719: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52720:
52721: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52715: -- Update the line information that should be overwritten
52716: --
52717: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52718: p_header_num => 1);
52719: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52720:
52721: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52722:
52723: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52717: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52718: p_header_num => 1);
52719: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52720:
52721: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52722:
52723: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52724: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52725: END IF;
52720:
52721: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52722:
52723: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52724: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52725: END IF;
52726:
52727: --
52728: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52727: --
52728: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52729: --
52730: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
52731: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
52732: ELSE
52733: ---------------------------------------------------------------------------------------------------
52734: -- 4262811a Switch Sign
52735: ---------------------------------------------------------------------------------------------------
52732: ELSE
52733: ---------------------------------------------------------------------------------------------------
52734: -- 4262811a Switch Sign
52735: ---------------------------------------------------------------------------------------------------
52736: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52737: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52738: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52739: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52740: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52733: ---------------------------------------------------------------------------------------------------
52734: -- 4262811a Switch Sign
52735: ---------------------------------------------------------------------------------------------------
52736: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52737: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52738: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52739: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52740: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52741: -- 5132302
52734: -- 4262811a Switch Sign
52735: ---------------------------------------------------------------------------------------------------
52736: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52737: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52738: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52739: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52740: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52741: -- 5132302
52742: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52735: ---------------------------------------------------------------------------------------------------
52736: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52737: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52738: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52739: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52740: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52741: -- 5132302
52742: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52743: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52736: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52737: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52738: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52739: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52740: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52741: -- 5132302
52742: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52743: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52744:
52738: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52739: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52740: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52741: -- 5132302
52742: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52743: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52744:
52745: END IF;
52746:
52739: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52740: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52741: -- 5132302
52742: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52743: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52744:
52745: END IF;
52746:
52747: -- 4955764
52744:
52745: END IF;
52746:
52747: -- 4955764
52748: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52749: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52750:
52751:
52752: XLA_AE_LINES_PKG.ValidateCurrentLine;
52748: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52749: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52750:
52751:
52752: XLA_AE_LINES_PKG.ValidateCurrentLine;
52753: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52754:
52755: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52756: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52749: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52750:
52751:
52752: XLA_AE_LINES_PKG.ValidateCurrentLine;
52753: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52754:
52755: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52756: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52757: ,p_balance_type_code => l_balance_type_code);
52900: --
52901: -- bulk performance
52902: --
52903: l_balance_type_code VARCHAR2(1);
52904: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
52905: l_log_module VARCHAR2(240);
52906:
52907: --
52908: -- Upgrade strategy
52970: ') = 'N'
52971: THEN
52972:
52973: --
52974: XLA_AE_LINES_PKG.SetNewLine;
52975:
52976: p_balance_type_code := l_balance_type_code;
52977: -- set the flag so later we will know whether the gain loss line needs to be created
52978:
52982:
52983: --
52984: -- bulk performance
52985: --
52986: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
52987: p_header_num => 0); -- 4262811
52988: --
52989: -- set accounting line options
52990: --
52987: p_header_num => 0); -- 4262811
52988: --
52989: -- set accounting line options
52990: --
52991: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
52992: p_natural_side_code => 'C'
52993: , p_gain_or_loss_flag => 'N'
52994: , p_gl_transfer_mode_code => 'S'
52995: , p_acct_entry_type_code => 'A'
53001: --
53002: --
53003: -- set accounting line type info
53004: --
53005: xla_ae_lines_pkg.SetAcctLineType
53006: (p_component_type => l_component_type
53007: ,p_event_type_code => l_event_type_code
53008: ,p_line_definition_owner_code => l_line_definition_owner_code
53009: ,p_line_definition_code => l_line_definition_code
53015: ,p_event_class_code => l_event_class_code);
53016: --
53017: -- set accounting class
53018: --
53019: xla_ae_lines_pkg.SetAcctClass(
53020: p_accounting_class_code => 'ROUNDING'
53021: , p_ae_header_id => l_ae_header_id
53022: );
53023:
53023:
53024: --
53025: -- set rounding class
53026: --
53027: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
53028: 'RECEIVABLE';
53029:
53030: --
53031: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53027: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
53028: 'RECEIVABLE';
53029:
53030: --
53031: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53032: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53033: --
53034: -- bulk performance
53035: --
53028: 'RECEIVABLE';
53029:
53030: --
53031: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53032: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53033: --
53034: -- bulk performance
53035: --
53036: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53032: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53033: --
53034: -- bulk performance
53035: --
53036: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53037:
53038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53039: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53040:
53034: -- bulk performance
53035: --
53036: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53037:
53038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53039: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53040:
53041: -- 4955764
53042: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53039: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53040:
53041: -- 4955764
53042: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53043: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
53044:
53045: -- 4458381 Public Sector Enh
53046:
53082: l_rec_acct_attrs.array_num_value(15) := p_source_64;
53083: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
53084: l_rec_acct_attrs.array_char_value(16) := p_source_65;
53085:
53086: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53087: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53088:
53089: ---------------------------------------------------------------------------------------------------------------
53090: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53083: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
53084: l_rec_acct_attrs.array_char_value(16) := p_source_65;
53085:
53086: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53087: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53088:
53089: ---------------------------------------------------------------------------------------------------------------
53090: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53091: ---------------------------------------------------------------------------------------------------------------
53086: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53087: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53088:
53089: ---------------------------------------------------------------------------------------------------------------
53090: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53091: ---------------------------------------------------------------------------------------------------------------
53092: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53093:
53094: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53088:
53089: ---------------------------------------------------------------------------------------------------------------
53090: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53091: ---------------------------------------------------------------------------------------------------------------
53092: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53093:
53094: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53095: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53096:
53090: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53091: ---------------------------------------------------------------------------------------------------------------
53092: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53093:
53094: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53095: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53096:
53097: IF xla_accounting_cache_pkg.GetValueChar
53098: (p_source_code => 'LEDGER_CATEGORY_CODE'
53091: ---------------------------------------------------------------------------------------------------------------
53092: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53093:
53094: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53095: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53096:
53097: IF xla_accounting_cache_pkg.GetValueChar
53098: (p_source_code => 'LEDGER_CATEGORY_CODE'
53099: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
53102: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
53103: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
53104: )
53105: THEN
53106: xla_ae_lines_pkg.BflowUpgEntry
53107: (p_business_method_code => l_bflow_method_code
53108: ,p_business_class_code => l_bflow_class_code
53109: ,p_balance_type => l_balance_type_code);
53110: ELSE
53142: , x_value_type_code => l_adr_value_type_code
53143: , p_side => 'NA'
53144: );
53145:
53146: xla_ae_lines_pkg.set_ccid(
53147: p_code_combination_id => l_ccid
53148: , p_value_type_code => l_adr_value_type_code
53149: , p_transaction_coa_id => l_adr_transaction_coa_id
53150: , p_accounting_coa_id => l_adr_accounting_coa_id
53178: xla_accounting_err_pkg.build_message
53179: (p_appli_s_name => 'XLA'
53180: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
53181: ,p_token_1 => 'LINE_NUMBER'
53182: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
53183: ,p_token_2 => 'LINE_TYPE_NAME'
53184: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
53185: l_component_type
53186: ,l_component_code
53214: --
53215: --
53216: ------------------------------------------------------------------------------------------------
53217: -- 4219869 Business Flow
53218: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
53219: -- Prior Entry. Currently, the following code is always generated.
53220: ------------------------------------------------------------------------------------------------
53221: XLA_AE_LINES_PKG.ValidateCurrentLine;
53222:
53217: -- 4219869 Business Flow
53218: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
53219: -- Prior Entry. Currently, the following code is always generated.
53220: ------------------------------------------------------------------------------------------------
53221: XLA_AE_LINES_PKG.ValidateCurrentLine;
53222:
53223: ------------------------------------------------------------------------------------
53224: -- 4219869 Business Flow
53225: -- Populated credit and debit amounts -- Need to generate this within IF
53223: ------------------------------------------------------------------------------------
53224: -- 4219869 Business Flow
53225: -- Populated credit and debit amounts -- Need to generate this within IF
53226: ------------------------------------------------------------------------------------
53227: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53228:
53229: ----------------------------------------------------------------------------------
53230: -- 4219869 Business Flow
53231: -- Update journal entry status -- Need to generate this within IF
53255: -- To allow MPA report to determine if it should generate report process
53256: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
53257: ------------------------------------------------------------------------------------------
53258:
53259: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
53260: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
53261: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
53262: -- call ADRs
53263: -- Bug 4922099
53256: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
53257: ------------------------------------------------------------------------------------------
53258:
53259: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
53260: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
53261: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
53262: -- call ADRs
53263: -- Bug 4922099
53264: --
53280: , x_value_type_code => l_adr_value_type_code
53281: , p_side => 'NA'
53282: );
53283:
53284: xla_ae_lines_pkg.set_ccid(
53285: p_code_combination_id => l_ccid
53286: , p_value_type_code => l_adr_value_type_code
53287: , p_transaction_coa_id => l_adr_transaction_coa_id
53288: , p_accounting_coa_id => l_adr_accounting_coa_id
53303:
53304: --
53305: -- Update the line information that should be overwritten
53306: --
53307: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
53308: p_header_num => 1);
53309: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
53310:
53311: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53305: -- Update the line information that should be overwritten
53306: --
53307: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
53308: p_header_num => 1);
53309: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
53310:
53311: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53312:
53313: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
53307: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
53308: p_header_num => 1);
53309: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
53310:
53311: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53312:
53313: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
53314: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
53315: END IF;
53310:
53311: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53312:
53313: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
53314: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
53315: END IF;
53316:
53317: --
53318: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
53317: --
53318: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
53319: --
53320: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
53321: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
53322: ELSE
53323: ---------------------------------------------------------------------------------------------------
53324: -- 4262811a Switch Sign
53325: ---------------------------------------------------------------------------------------------------
53322: ELSE
53323: ---------------------------------------------------------------------------------------------------
53324: -- 4262811a Switch Sign
53325: ---------------------------------------------------------------------------------------------------
53326: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53327: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53329: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53323: ---------------------------------------------------------------------------------------------------
53324: -- 4262811a Switch Sign
53325: ---------------------------------------------------------------------------------------------------
53326: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53327: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53329: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53331: -- 5132302
53324: -- 4262811a Switch Sign
53325: ---------------------------------------------------------------------------------------------------
53326: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53327: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53329: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53331: -- 5132302
53332: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53325: ---------------------------------------------------------------------------------------------------
53326: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53327: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53329: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53331: -- 5132302
53332: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53333: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53326: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53327: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53329: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53331: -- 5132302
53332: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53333: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53334:
53328: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53329: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53331: -- 5132302
53332: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53333: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53334:
53335: END IF;
53336:
53329: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53330: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53331: -- 5132302
53332: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53333: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53334:
53335: END IF;
53336:
53337: -- 4955764
53334:
53335: END IF;
53336:
53337: -- 4955764
53338: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53339: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
53340:
53341:
53342: XLA_AE_LINES_PKG.ValidateCurrentLine;
53338: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53339: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
53340:
53341:
53342: XLA_AE_LINES_PKG.ValidateCurrentLine;
53343: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53344:
53345: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
53346: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
53339: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
53340:
53341:
53342: XLA_AE_LINES_PKG.ValidateCurrentLine;
53343: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53344:
53345: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
53346: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
53347: ,p_balance_type_code => l_balance_type_code);
53490: --
53491: -- bulk performance
53492: --
53493: l_balance_type_code VARCHAR2(1);
53494: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
53495: l_log_module VARCHAR2(240);
53496:
53497: --
53498: -- Upgrade strategy
53560: ') = 'N'
53561: THEN
53562:
53563: --
53564: XLA_AE_LINES_PKG.SetNewLine;
53565:
53566: p_balance_type_code := l_balance_type_code;
53567: -- set the flag so later we will know whether the gain loss line needs to be created
53568:
53572:
53573: --
53574: -- bulk performance
53575: --
53576: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
53577: p_header_num => 0); -- 4262811
53578: --
53579: -- set accounting line options
53580: --
53577: p_header_num => 0); -- 4262811
53578: --
53579: -- set accounting line options
53580: --
53581: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
53582: p_natural_side_code => 'C'
53583: , p_gain_or_loss_flag => 'N'
53584: , p_gl_transfer_mode_code => 'S'
53585: , p_acct_entry_type_code => 'A'
53591: --
53592: --
53593: -- set accounting line type info
53594: --
53595: xla_ae_lines_pkg.SetAcctLineType
53596: (p_component_type => l_component_type
53597: ,p_event_type_code => l_event_type_code
53598: ,p_line_definition_owner_code => l_line_definition_owner_code
53599: ,p_line_definition_code => l_line_definition_code
53605: ,p_event_class_code => l_event_class_code);
53606: --
53607: -- set accounting class
53608: --
53609: xla_ae_lines_pkg.SetAcctClass(
53610: p_accounting_class_code => 'SHORT_TERM_DEBT'
53611: , p_ae_header_id => l_ae_header_id
53612: );
53613:
53613:
53614: --
53615: -- set rounding class
53616: --
53617: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
53618: 'RECEIVABLE';
53619:
53620: --
53621: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53617: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
53618: 'RECEIVABLE';
53619:
53620: --
53621: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53622: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53623: --
53624: -- bulk performance
53625: --
53618: 'RECEIVABLE';
53619:
53620: --
53621: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
53622: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53623: --
53624: -- bulk performance
53625: --
53626: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53622: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
53623: --
53624: -- bulk performance
53625: --
53626: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53627:
53628: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53629: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53630:
53624: -- bulk performance
53625: --
53626: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
53627:
53628: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53629: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53630:
53631: -- 4955764
53632: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53628: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
53629: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
53630:
53631: -- 4955764
53632: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53633: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
53634:
53635: -- 4458381 Public Sector Enh
53636:
53672: l_rec_acct_attrs.array_num_value(15) := p_source_64;
53673: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
53674: l_rec_acct_attrs.array_char_value(16) := p_source_65;
53675:
53676: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53677: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53678:
53679: ---------------------------------------------------------------------------------------------------------------
53680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53673: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
53674: l_rec_acct_attrs.array_char_value(16) := p_source_65;
53675:
53676: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53677: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53678:
53679: ---------------------------------------------------------------------------------------------------------------
53680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53681: ---------------------------------------------------------------------------------------------------------------
53676: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
53677: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
53678:
53679: ---------------------------------------------------------------------------------------------------------------
53680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53681: ---------------------------------------------------------------------------------------------------------------
53682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53683:
53684: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53678:
53679: ---------------------------------------------------------------------------------------------------------------
53680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53681: ---------------------------------------------------------------------------------------------------------------
53682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53683:
53684: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53685: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53686:
53680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
53681: ---------------------------------------------------------------------------------------------------------------
53682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53683:
53684: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53685: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53686:
53687: IF xla_accounting_cache_pkg.GetValueChar
53688: (p_source_code => 'LEDGER_CATEGORY_CODE'
53681: ---------------------------------------------------------------------------------------------------------------
53682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
53683:
53684: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53685: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
53686:
53687: IF xla_accounting_cache_pkg.GetValueChar
53688: (p_source_code => 'LEDGER_CATEGORY_CODE'
53689: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
53692: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
53693: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
53694: )
53695: THEN
53696: xla_ae_lines_pkg.BflowUpgEntry
53697: (p_business_method_code => l_bflow_method_code
53698: ,p_business_class_code => l_bflow_class_code
53699: ,p_balance_type => l_balance_type_code);
53700: ELSE
53732: , x_value_type_code => l_adr_value_type_code
53733: , p_side => 'NA'
53734: );
53735:
53736: xla_ae_lines_pkg.set_ccid(
53737: p_code_combination_id => l_ccid
53738: , p_value_type_code => l_adr_value_type_code
53739: , p_transaction_coa_id => l_adr_transaction_coa_id
53740: , p_accounting_coa_id => l_adr_accounting_coa_id
53768: xla_accounting_err_pkg.build_message
53769: (p_appli_s_name => 'XLA'
53770: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
53771: ,p_token_1 => 'LINE_NUMBER'
53772: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
53773: ,p_token_2 => 'LINE_TYPE_NAME'
53774: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
53775: l_component_type
53776: ,l_component_code
53804: --
53805: --
53806: ------------------------------------------------------------------------------------------------
53807: -- 4219869 Business Flow
53808: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
53809: -- Prior Entry. Currently, the following code is always generated.
53810: ------------------------------------------------------------------------------------------------
53811: XLA_AE_LINES_PKG.ValidateCurrentLine;
53812:
53807: -- 4219869 Business Flow
53808: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
53809: -- Prior Entry. Currently, the following code is always generated.
53810: ------------------------------------------------------------------------------------------------
53811: XLA_AE_LINES_PKG.ValidateCurrentLine;
53812:
53813: ------------------------------------------------------------------------------------
53814: -- 4219869 Business Flow
53815: -- Populated credit and debit amounts -- Need to generate this within IF
53813: ------------------------------------------------------------------------------------
53814: -- 4219869 Business Flow
53815: -- Populated credit and debit amounts -- Need to generate this within IF
53816: ------------------------------------------------------------------------------------
53817: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53818:
53819: ----------------------------------------------------------------------------------
53820: -- 4219869 Business Flow
53821: -- Update journal entry status -- Need to generate this within IF
53845: -- To allow MPA report to determine if it should generate report process
53846: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
53847: ------------------------------------------------------------------------------------------
53848:
53849: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
53850: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
53851: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
53852: -- call ADRs
53853: -- Bug 4922099
53846: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
53847: ------------------------------------------------------------------------------------------
53848:
53849: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
53850: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
53851: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
53852: -- call ADRs
53853: -- Bug 4922099
53854: --
53870: , x_value_type_code => l_adr_value_type_code
53871: , p_side => 'NA'
53872: );
53873:
53874: xla_ae_lines_pkg.set_ccid(
53875: p_code_combination_id => l_ccid
53876: , p_value_type_code => l_adr_value_type_code
53877: , p_transaction_coa_id => l_adr_transaction_coa_id
53878: , p_accounting_coa_id => l_adr_accounting_coa_id
53893:
53894: --
53895: -- Update the line information that should be overwritten
53896: --
53897: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
53898: p_header_num => 1);
53899: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
53900:
53901: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53895: -- Update the line information that should be overwritten
53896: --
53897: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
53898: p_header_num => 1);
53899: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
53900:
53901: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53902:
53903: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
53897: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
53898: p_header_num => 1);
53899: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
53900:
53901: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53902:
53903: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
53904: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
53905: END IF;
53900:
53901: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
53902:
53903: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
53904: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
53905: END IF;
53906:
53907: --
53908: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
53907: --
53908: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
53909: --
53910: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
53911: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
53912: ELSE
53913: ---------------------------------------------------------------------------------------------------
53914: -- 4262811a Switch Sign
53915: ---------------------------------------------------------------------------------------------------
53912: ELSE
53913: ---------------------------------------------------------------------------------------------------
53914: -- 4262811a Switch Sign
53915: ---------------------------------------------------------------------------------------------------
53916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53913: ---------------------------------------------------------------------------------------------------
53914: -- 4262811a Switch Sign
53915: ---------------------------------------------------------------------------------------------------
53916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53921: -- 5132302
53914: -- 4262811a Switch Sign
53915: ---------------------------------------------------------------------------------------------------
53916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53921: -- 5132302
53922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53915: ---------------------------------------------------------------------------------------------------
53916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53921: -- 5132302
53922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53923: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
53917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53921: -- 5132302
53922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53923: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53924:
53918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53921: -- 5132302
53922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53923: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53924:
53925: END IF;
53926:
53919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
53920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53921: -- 5132302
53922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
53923: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
53924:
53925: END IF;
53926:
53927: -- 4955764
53924:
53925: END IF;
53926:
53927: -- 4955764
53928: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53929: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
53930:
53931:
53932: XLA_AE_LINES_PKG.ValidateCurrentLine;
53928: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
53929: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
53930:
53931:
53932: XLA_AE_LINES_PKG.ValidateCurrentLine;
53933: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53934:
53935: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
53936: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
53929: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
53930:
53931:
53932: XLA_AE_LINES_PKG.ValidateCurrentLine;
53933: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
53934:
53935: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
53936: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
53937: ,p_balance_type_code => l_balance_type_code);
54086: --
54087: -- bulk performance
54088: --
54089: l_balance_type_code VARCHAR2(1);
54090: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
54091: l_log_module VARCHAR2(240);
54092:
54093: --
54094: -- Upgrade strategy
54156: ') = 'N'
54157: THEN
54158:
54159: --
54160: XLA_AE_LINES_PKG.SetNewLine;
54161:
54162: p_balance_type_code := l_balance_type_code;
54163: -- set the flag so later we will know whether the gain loss line needs to be created
54164:
54168:
54169: --
54170: -- bulk performance
54171: --
54172: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
54173: p_header_num => 0); -- 4262811
54174: --
54175: -- set accounting line options
54176: --
54173: p_header_num => 0); -- 4262811
54174: --
54175: -- set accounting line options
54176: --
54177: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
54178: p_natural_side_code => 'C'
54179: , p_gain_or_loss_flag => 'N'
54180: , p_gl_transfer_mode_code => 'S'
54181: , p_acct_entry_type_code => 'A'
54187: --
54188: --
54189: -- set accounting line type info
54190: --
54191: xla_ae_lines_pkg.SetAcctLineType
54192: (p_component_type => l_component_type
54193: ,p_event_type_code => l_event_type_code
54194: ,p_line_definition_owner_code => l_line_definition_owner_code
54195: ,p_line_definition_code => l_line_definition_code
54201: ,p_event_class_code => l_event_class_code);
54202: --
54203: -- set accounting class
54204: --
54205: xla_ae_lines_pkg.SetAcctClass(
54206: p_accounting_class_code => 'RECEIVABLE'
54207: , p_ae_header_id => l_ae_header_id
54208: );
54209:
54209:
54210: --
54211: -- set rounding class
54212: --
54213: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
54214: 'RECEIVABLE';
54215:
54216: --
54217: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
54213: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
54214: 'RECEIVABLE';
54215:
54216: --
54217: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
54218: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
54219: --
54220: -- bulk performance
54221: --
54214: 'RECEIVABLE';
54215:
54216: --
54217: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
54218: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
54219: --
54220: -- bulk performance
54221: --
54222: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
54218: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
54219: --
54220: -- bulk performance
54221: --
54222: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
54223:
54224: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
54225: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
54226:
54220: -- bulk performance
54221: --
54222: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
54223:
54224: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
54225: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
54226:
54227: -- 4955764
54228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54224: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
54225: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
54226:
54227: -- 4955764
54228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
54230:
54231: -- 4458381 Public Sector Enh
54232:
54268: l_rec_acct_attrs.array_num_value(15) := p_source_64;
54269: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
54270: l_rec_acct_attrs.array_char_value(16) := p_source_65;
54271:
54272: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
54273: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
54274:
54275: ---------------------------------------------------------------------------------------------------------------
54276: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54269: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
54270: l_rec_acct_attrs.array_char_value(16) := p_source_65;
54271:
54272: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
54273: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
54274:
54275: ---------------------------------------------------------------------------------------------------------------
54276: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54277: ---------------------------------------------------------------------------------------------------------------
54272: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
54273: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
54274:
54275: ---------------------------------------------------------------------------------------------------------------
54276: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54277: ---------------------------------------------------------------------------------------------------------------
54278: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54279:
54280: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54274:
54275: ---------------------------------------------------------------------------------------------------------------
54276: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54277: ---------------------------------------------------------------------------------------------------------------
54278: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54279:
54280: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54281: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54282:
54276: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54277: ---------------------------------------------------------------------------------------------------------------
54278: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54279:
54280: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54281: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54282:
54283: IF xla_accounting_cache_pkg.GetValueChar
54284: (p_source_code => 'LEDGER_CATEGORY_CODE'
54277: ---------------------------------------------------------------------------------------------------------------
54278: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54279:
54280: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54281: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54282:
54283: IF xla_accounting_cache_pkg.GetValueChar
54284: (p_source_code => 'LEDGER_CATEGORY_CODE'
54285: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
54288: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
54289: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
54290: )
54291: THEN
54292: xla_ae_lines_pkg.BflowUpgEntry
54293: (p_business_method_code => l_bflow_method_code
54294: ,p_business_class_code => l_bflow_class_code
54295: ,p_balance_type => l_balance_type_code);
54296: ELSE
54305: --
54306: -- call description
54307: --
54308:
54309: xla_ae_lines_pkg.SetLineDescription(
54310: p_ae_header_id => l_ae_header_id
54311: ,p_description => Description_2 (
54312: p_application_id => p_application_id
54313: , p_ae_header_id => l_ae_header_id
54340: , x_value_type_code => l_adr_value_type_code
54341: , p_side => 'NA'
54342: );
54343:
54344: xla_ae_lines_pkg.set_ccid(
54345: p_code_combination_id => l_ccid
54346: , p_value_type_code => l_adr_value_type_code
54347: , p_transaction_coa_id => l_adr_transaction_coa_id
54348: , p_accounting_coa_id => l_adr_accounting_coa_id
54376: xla_accounting_err_pkg.build_message
54377: (p_appli_s_name => 'XLA'
54378: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
54379: ,p_token_1 => 'LINE_NUMBER'
54380: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
54381: ,p_token_2 => 'LINE_TYPE_NAME'
54382: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
54383: l_component_type
54384: ,l_component_code
54412: --
54413: --
54414: ------------------------------------------------------------------------------------------------
54415: -- 4219869 Business Flow
54416: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
54417: -- Prior Entry. Currently, the following code is always generated.
54418: ------------------------------------------------------------------------------------------------
54419: XLA_AE_LINES_PKG.ValidateCurrentLine;
54420:
54415: -- 4219869 Business Flow
54416: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
54417: -- Prior Entry. Currently, the following code is always generated.
54418: ------------------------------------------------------------------------------------------------
54419: XLA_AE_LINES_PKG.ValidateCurrentLine;
54420:
54421: ------------------------------------------------------------------------------------
54422: -- 4219869 Business Flow
54423: -- Populated credit and debit amounts -- Need to generate this within IF
54421: ------------------------------------------------------------------------------------
54422: -- 4219869 Business Flow
54423: -- Populated credit and debit amounts -- Need to generate this within IF
54424: ------------------------------------------------------------------------------------
54425: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
54426:
54427: ----------------------------------------------------------------------------------
54428: -- 4219869 Business Flow
54429: -- Update journal entry status -- Need to generate this within IF
54453: -- To allow MPA report to determine if it should generate report process
54454: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
54455: ------------------------------------------------------------------------------------------
54456:
54457: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
54458: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
54459: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
54460: -- call ADRs
54461: -- Bug 4922099
54454: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
54455: ------------------------------------------------------------------------------------------
54456:
54457: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
54458: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
54459: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
54460: -- call ADRs
54461: -- Bug 4922099
54462: --
54478: , x_value_type_code => l_adr_value_type_code
54479: , p_side => 'NA'
54480: );
54481:
54482: xla_ae_lines_pkg.set_ccid(
54483: p_code_combination_id => l_ccid
54484: , p_value_type_code => l_adr_value_type_code
54485: , p_transaction_coa_id => l_adr_transaction_coa_id
54486: , p_accounting_coa_id => l_adr_accounting_coa_id
54501:
54502: --
54503: -- Update the line information that should be overwritten
54504: --
54505: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
54506: p_header_num => 1);
54507: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
54508:
54509: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54503: -- Update the line information that should be overwritten
54504: --
54505: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
54506: p_header_num => 1);
54507: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
54508:
54509: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54510:
54511: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
54505: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
54506: p_header_num => 1);
54507: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
54508:
54509: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54510:
54511: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
54512: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
54513: END IF;
54508:
54509: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
54510:
54511: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
54512: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
54513: END IF;
54514:
54515: --
54516: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
54515: --
54516: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
54517: --
54518: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
54519: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
54520: ELSE
54521: ---------------------------------------------------------------------------------------------------
54522: -- 4262811a Switch Sign
54523: ---------------------------------------------------------------------------------------------------
54520: ELSE
54521: ---------------------------------------------------------------------------------------------------
54522: -- 4262811a Switch Sign
54523: ---------------------------------------------------------------------------------------------------
54524: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54526: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54528: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54521: ---------------------------------------------------------------------------------------------------
54522: -- 4262811a Switch Sign
54523: ---------------------------------------------------------------------------------------------------
54524: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54526: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54528: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54529: -- 5132302
54522: -- 4262811a Switch Sign
54523: ---------------------------------------------------------------------------------------------------
54524: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54526: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54528: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54529: -- 5132302
54530: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54523: ---------------------------------------------------------------------------------------------------
54524: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54526: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54528: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54529: -- 5132302
54530: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54531: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54524: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
54525: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54526: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54528: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54529: -- 5132302
54530: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54531: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54532:
54526: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54528: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54529: -- 5132302
54530: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54531: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54532:
54533: END IF;
54534:
54527: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
54528: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54529: -- 5132302
54530: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
54531: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
54532:
54533: END IF;
54534:
54535: -- 4955764
54532:
54533: END IF;
54534:
54535: -- 4955764
54536: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54537: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
54538:
54539:
54540: XLA_AE_LINES_PKG.ValidateCurrentLine;
54536: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54537: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
54538:
54539:
54540: XLA_AE_LINES_PKG.ValidateCurrentLine;
54541: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
54542:
54543: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
54544: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
54537: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
54538:
54539:
54540: XLA_AE_LINES_PKG.ValidateCurrentLine;
54541: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
54542:
54543: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
54544: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
54545: ,p_balance_type_code => l_balance_type_code);
54688: --
54689: -- bulk performance
54690: --
54691: l_balance_type_code VARCHAR2(1);
54692: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
54693: l_log_module VARCHAR2(240);
54694:
54695: --
54696: -- Upgrade strategy
54758: ') = 'N'
54759: THEN
54760:
54761: --
54762: XLA_AE_LINES_PKG.SetNewLine;
54763:
54764: p_balance_type_code := l_balance_type_code;
54765: -- set the flag so later we will know whether the gain loss line needs to be created
54766:
54770:
54771: --
54772: -- bulk performance
54773: --
54774: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
54775: p_header_num => 0); -- 4262811
54776: --
54777: -- set accounting line options
54778: --
54775: p_header_num => 0); -- 4262811
54776: --
54777: -- set accounting line options
54778: --
54779: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
54780: p_natural_side_code => 'C'
54781: , p_gain_or_loss_flag => 'N'
54782: , p_gl_transfer_mode_code => 'S'
54783: , p_acct_entry_type_code => 'A'
54789: --
54790: --
54791: -- set accounting line type info
54792: --
54793: xla_ae_lines_pkg.SetAcctLineType
54794: (p_component_type => l_component_type
54795: ,p_event_type_code => l_event_type_code
54796: ,p_line_definition_owner_code => l_line_definition_owner_code
54797: ,p_line_definition_code => l_line_definition_code
54803: ,p_event_class_code => l_event_class_code);
54804: --
54805: -- set accounting class
54806: --
54807: xla_ae_lines_pkg.SetAcctClass(
54808: p_accounting_class_code => 'DEFERRED_TAX'
54809: , p_ae_header_id => l_ae_header_id
54810: );
54811:
54811:
54812: --
54813: -- set rounding class
54814: --
54815: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
54816: 'RECEIVABLE';
54817:
54818: --
54819: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
54815: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
54816: 'RECEIVABLE';
54817:
54818: --
54819: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
54820: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
54821: --
54822: -- bulk performance
54823: --
54816: 'RECEIVABLE';
54817:
54818: --
54819: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
54820: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
54821: --
54822: -- bulk performance
54823: --
54824: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
54820: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
54821: --
54822: -- bulk performance
54823: --
54824: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
54825:
54826: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
54827: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
54828:
54822: -- bulk performance
54823: --
54824: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
54825:
54826: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
54827: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
54828:
54829: -- 4955764
54830: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54826: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
54827: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
54828:
54829: -- 4955764
54830: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
54831: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
54832:
54833: -- 4458381 Public Sector Enh
54834:
54870: l_rec_acct_attrs.array_num_value(15) := p_source_64;
54871: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
54872: l_rec_acct_attrs.array_char_value(16) := p_source_65;
54873:
54874: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
54875: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
54876:
54877: ---------------------------------------------------------------------------------------------------------------
54878: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54871: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
54872: l_rec_acct_attrs.array_char_value(16) := p_source_65;
54873:
54874: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
54875: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
54876:
54877: ---------------------------------------------------------------------------------------------------------------
54878: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54879: ---------------------------------------------------------------------------------------------------------------
54874: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
54875: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
54876:
54877: ---------------------------------------------------------------------------------------------------------------
54878: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54879: ---------------------------------------------------------------------------------------------------------------
54880: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54881:
54882: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54876:
54877: ---------------------------------------------------------------------------------------------------------------
54878: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54879: ---------------------------------------------------------------------------------------------------------------
54880: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54881:
54882: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54883: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54884:
54878: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
54879: ---------------------------------------------------------------------------------------------------------------
54880: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54881:
54882: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54883: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54884:
54885: IF xla_accounting_cache_pkg.GetValueChar
54886: (p_source_code => 'LEDGER_CATEGORY_CODE'
54879: ---------------------------------------------------------------------------------------------------------------
54880: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
54881:
54882: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54883: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
54884:
54885: IF xla_accounting_cache_pkg.GetValueChar
54886: (p_source_code => 'LEDGER_CATEGORY_CODE'
54887: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
54890: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
54891: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
54892: )
54893: THEN
54894: xla_ae_lines_pkg.BflowUpgEntry
54895: (p_business_method_code => l_bflow_method_code
54896: ,p_business_class_code => l_bflow_class_code
54897: ,p_balance_type => l_balance_type_code);
54898: ELSE
54930: , x_value_type_code => l_adr_value_type_code
54931: , p_side => 'NA'
54932: );
54933:
54934: xla_ae_lines_pkg.set_ccid(
54935: p_code_combination_id => l_ccid
54936: , p_value_type_code => l_adr_value_type_code
54937: , p_transaction_coa_id => l_adr_transaction_coa_id
54938: , p_accounting_coa_id => l_adr_accounting_coa_id
54966: xla_accounting_err_pkg.build_message
54967: (p_appli_s_name => 'XLA'
54968: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
54969: ,p_token_1 => 'LINE_NUMBER'
54970: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
54971: ,p_token_2 => 'LINE_TYPE_NAME'
54972: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
54973: l_component_type
54974: ,l_component_code
55002: --
55003: --
55004: ------------------------------------------------------------------------------------------------
55005: -- 4219869 Business Flow
55006: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
55007: -- Prior Entry. Currently, the following code is always generated.
55008: ------------------------------------------------------------------------------------------------
55009: XLA_AE_LINES_PKG.ValidateCurrentLine;
55010:
55005: -- 4219869 Business Flow
55006: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
55007: -- Prior Entry. Currently, the following code is always generated.
55008: ------------------------------------------------------------------------------------------------
55009: XLA_AE_LINES_PKG.ValidateCurrentLine;
55010:
55011: ------------------------------------------------------------------------------------
55012: -- 4219869 Business Flow
55013: -- Populated credit and debit amounts -- Need to generate this within IF
55011: ------------------------------------------------------------------------------------
55012: -- 4219869 Business Flow
55013: -- Populated credit and debit amounts -- Need to generate this within IF
55014: ------------------------------------------------------------------------------------
55015: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55016:
55017: ----------------------------------------------------------------------------------
55018: -- 4219869 Business Flow
55019: -- Update journal entry status -- Need to generate this within IF
55043: -- To allow MPA report to determine if it should generate report process
55044: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
55045: ------------------------------------------------------------------------------------------
55046:
55047: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
55048: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
55049: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
55050: -- call ADRs
55051: -- Bug 4922099
55044: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
55045: ------------------------------------------------------------------------------------------
55046:
55047: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
55048: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
55049: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
55050: -- call ADRs
55051: -- Bug 4922099
55052: --
55068: , x_value_type_code => l_adr_value_type_code
55069: , p_side => 'NA'
55070: );
55071:
55072: xla_ae_lines_pkg.set_ccid(
55073: p_code_combination_id => l_ccid
55074: , p_value_type_code => l_adr_value_type_code
55075: , p_transaction_coa_id => l_adr_transaction_coa_id
55076: , p_accounting_coa_id => l_adr_accounting_coa_id
55091:
55092: --
55093: -- Update the line information that should be overwritten
55094: --
55095: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55096: p_header_num => 1);
55097: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55098:
55099: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55093: -- Update the line information that should be overwritten
55094: --
55095: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55096: p_header_num => 1);
55097: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55098:
55099: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55100:
55101: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55095: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55096: p_header_num => 1);
55097: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55098:
55099: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55100:
55101: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55102: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
55103: END IF;
55098:
55099: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55100:
55101: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55102: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
55103: END IF;
55104:
55105: --
55106: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
55105: --
55106: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
55107: --
55108: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
55109: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
55110: ELSE
55111: ---------------------------------------------------------------------------------------------------
55112: -- 4262811a Switch Sign
55113: ---------------------------------------------------------------------------------------------------
55110: ELSE
55111: ---------------------------------------------------------------------------------------------------
55112: -- 4262811a Switch Sign
55113: ---------------------------------------------------------------------------------------------------
55114: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55111: ---------------------------------------------------------------------------------------------------
55112: -- 4262811a Switch Sign
55113: ---------------------------------------------------------------------------------------------------
55114: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55119: -- 5132302
55112: -- 4262811a Switch Sign
55113: ---------------------------------------------------------------------------------------------------
55114: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55119: -- 5132302
55120: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55113: ---------------------------------------------------------------------------------------------------
55114: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55119: -- 5132302
55120: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55121: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55114: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55115: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55119: -- 5132302
55120: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55121: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55122:
55116: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55119: -- 5132302
55120: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55121: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55122:
55123: END IF;
55124:
55117: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55118: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55119: -- 5132302
55120: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55121: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55122:
55123: END IF;
55124:
55125: -- 4955764
55122:
55123: END IF;
55124:
55125: -- 4955764
55126: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55127: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55128:
55129:
55130: XLA_AE_LINES_PKG.ValidateCurrentLine;
55126: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55127: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55128:
55129:
55130: XLA_AE_LINES_PKG.ValidateCurrentLine;
55131: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55132:
55133: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
55134: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
55127: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55128:
55129:
55130: XLA_AE_LINES_PKG.ValidateCurrentLine;
55131: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55132:
55133: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
55134: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
55135: ,p_balance_type_code => l_balance_type_code);
55278: --
55279: -- bulk performance
55280: --
55281: l_balance_type_code VARCHAR2(1);
55282: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
55283: l_log_module VARCHAR2(240);
55284:
55285: --
55286: -- Upgrade strategy
55348: ') = 'N'
55349: THEN
55350:
55351: --
55352: XLA_AE_LINES_PKG.SetNewLine;
55353:
55354: p_balance_type_code := l_balance_type_code;
55355: -- set the flag so later we will know whether the gain loss line needs to be created
55356:
55360:
55361: --
55362: -- bulk performance
55363: --
55364: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
55365: p_header_num => 0); -- 4262811
55366: --
55367: -- set accounting line options
55368: --
55365: p_header_num => 0); -- 4262811
55366: --
55367: -- set accounting line options
55368: --
55369: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
55370: p_natural_side_code => 'C'
55371: , p_gain_or_loss_flag => 'N'
55372: , p_gl_transfer_mode_code => 'S'
55373: , p_acct_entry_type_code => 'A'
55379: --
55380: --
55381: -- set accounting line type info
55382: --
55383: xla_ae_lines_pkg.SetAcctLineType
55384: (p_component_type => l_component_type
55385: ,p_event_type_code => l_event_type_code
55386: ,p_line_definition_owner_code => l_line_definition_owner_code
55387: ,p_line_definition_code => l_line_definition_code
55393: ,p_event_class_code => l_event_class_code);
55394: --
55395: -- set accounting class
55396: --
55397: xla_ae_lines_pkg.SetAcctClass(
55398: p_accounting_class_code => 'EDISC'
55399: , p_ae_header_id => l_ae_header_id
55400: );
55401:
55401:
55402: --
55403: -- set rounding class
55404: --
55405: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
55406: 'RECEIVABLE';
55407:
55408: --
55409: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55405: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
55406: 'RECEIVABLE';
55407:
55408: --
55409: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55410: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
55411: --
55412: -- bulk performance
55413: --
55406: 'RECEIVABLE';
55407:
55408: --
55409: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55410: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
55411: --
55412: -- bulk performance
55413: --
55414: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
55410: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
55411: --
55412: -- bulk performance
55413: --
55414: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
55415:
55416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
55417: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
55418:
55412: -- bulk performance
55413: --
55414: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
55415:
55416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
55417: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
55418:
55419: -- 4955764
55420: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55416: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
55417: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
55418:
55419: -- 4955764
55420: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55421: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
55422:
55423: -- 4458381 Public Sector Enh
55424:
55460: l_rec_acct_attrs.array_num_value(15) := p_source_64;
55461: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
55462: l_rec_acct_attrs.array_char_value(16) := p_source_65;
55463:
55464: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
55465: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
55466:
55467: ---------------------------------------------------------------------------------------------------------------
55468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55461: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
55462: l_rec_acct_attrs.array_char_value(16) := p_source_65;
55463:
55464: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
55465: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
55466:
55467: ---------------------------------------------------------------------------------------------------------------
55468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55469: ---------------------------------------------------------------------------------------------------------------
55464: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
55465: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
55466:
55467: ---------------------------------------------------------------------------------------------------------------
55468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55469: ---------------------------------------------------------------------------------------------------------------
55470: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55471:
55472: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55466:
55467: ---------------------------------------------------------------------------------------------------------------
55468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55469: ---------------------------------------------------------------------------------------------------------------
55470: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55471:
55472: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55473: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55474:
55468: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
55469: ---------------------------------------------------------------------------------------------------------------
55470: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55471:
55472: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55473: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55474:
55475: IF xla_accounting_cache_pkg.GetValueChar
55476: (p_source_code => 'LEDGER_CATEGORY_CODE'
55469: ---------------------------------------------------------------------------------------------------------------
55470: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
55471:
55472: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55473: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
55474:
55475: IF xla_accounting_cache_pkg.GetValueChar
55476: (p_source_code => 'LEDGER_CATEGORY_CODE'
55477: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
55480: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
55481: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
55482: )
55483: THEN
55484: xla_ae_lines_pkg.BflowUpgEntry
55485: (p_business_method_code => l_bflow_method_code
55486: ,p_business_class_code => l_bflow_class_code
55487: ,p_balance_type => l_balance_type_code);
55488: ELSE
55520: , x_value_type_code => l_adr_value_type_code
55521: , p_side => 'NA'
55522: );
55523:
55524: xla_ae_lines_pkg.set_ccid(
55525: p_code_combination_id => l_ccid
55526: , p_value_type_code => l_adr_value_type_code
55527: , p_transaction_coa_id => l_adr_transaction_coa_id
55528: , p_accounting_coa_id => l_adr_accounting_coa_id
55556: xla_accounting_err_pkg.build_message
55557: (p_appli_s_name => 'XLA'
55558: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
55559: ,p_token_1 => 'LINE_NUMBER'
55560: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
55561: ,p_token_2 => 'LINE_TYPE_NAME'
55562: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
55563: l_component_type
55564: ,l_component_code
55592: --
55593: --
55594: ------------------------------------------------------------------------------------------------
55595: -- 4219869 Business Flow
55596: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
55597: -- Prior Entry. Currently, the following code is always generated.
55598: ------------------------------------------------------------------------------------------------
55599: XLA_AE_LINES_PKG.ValidateCurrentLine;
55600:
55595: -- 4219869 Business Flow
55596: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
55597: -- Prior Entry. Currently, the following code is always generated.
55598: ------------------------------------------------------------------------------------------------
55599: XLA_AE_LINES_PKG.ValidateCurrentLine;
55600:
55601: ------------------------------------------------------------------------------------
55602: -- 4219869 Business Flow
55603: -- Populated credit and debit amounts -- Need to generate this within IF
55601: ------------------------------------------------------------------------------------
55602: -- 4219869 Business Flow
55603: -- Populated credit and debit amounts -- Need to generate this within IF
55604: ------------------------------------------------------------------------------------
55605: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55606:
55607: ----------------------------------------------------------------------------------
55608: -- 4219869 Business Flow
55609: -- Update journal entry status -- Need to generate this within IF
55633: -- To allow MPA report to determine if it should generate report process
55634: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
55635: ------------------------------------------------------------------------------------------
55636:
55637: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
55638: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
55639: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
55640: -- call ADRs
55641: -- Bug 4922099
55634: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
55635: ------------------------------------------------------------------------------------------
55636:
55637: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
55638: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
55639: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
55640: -- call ADRs
55641: -- Bug 4922099
55642: --
55658: , x_value_type_code => l_adr_value_type_code
55659: , p_side => 'NA'
55660: );
55661:
55662: xla_ae_lines_pkg.set_ccid(
55663: p_code_combination_id => l_ccid
55664: , p_value_type_code => l_adr_value_type_code
55665: , p_transaction_coa_id => l_adr_transaction_coa_id
55666: , p_accounting_coa_id => l_adr_accounting_coa_id
55681:
55682: --
55683: -- Update the line information that should be overwritten
55684: --
55685: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55686: p_header_num => 1);
55687: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55688:
55689: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55683: -- Update the line information that should be overwritten
55684: --
55685: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55686: p_header_num => 1);
55687: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55688:
55689: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55690:
55691: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55685: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
55686: p_header_num => 1);
55687: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
55688:
55689: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55690:
55691: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55692: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
55693: END IF;
55688:
55689: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
55690:
55691: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
55692: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
55693: END IF;
55694:
55695: --
55696: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
55695: --
55696: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
55697: --
55698: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
55699: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
55700: ELSE
55701: ---------------------------------------------------------------------------------------------------
55702: -- 4262811a Switch Sign
55703: ---------------------------------------------------------------------------------------------------
55700: ELSE
55701: ---------------------------------------------------------------------------------------------------
55702: -- 4262811a Switch Sign
55703: ---------------------------------------------------------------------------------------------------
55704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55701: ---------------------------------------------------------------------------------------------------
55702: -- 4262811a Switch Sign
55703: ---------------------------------------------------------------------------------------------------
55704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55709: -- 5132302
55702: -- 4262811a Switch Sign
55703: ---------------------------------------------------------------------------------------------------
55704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55709: -- 5132302
55710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55703: ---------------------------------------------------------------------------------------------------
55704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55709: -- 5132302
55710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55711: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55704: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
55705: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55709: -- 5132302
55710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55711: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55712:
55706: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55709: -- 5132302
55710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55711: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55712:
55713: END IF;
55714:
55707: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
55708: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55709: -- 5132302
55710: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
55711: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
55712:
55713: END IF;
55714:
55715: -- 4955764
55712:
55713: END IF;
55714:
55715: -- 4955764
55716: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55717: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55718:
55719:
55720: XLA_AE_LINES_PKG.ValidateCurrentLine;
55716: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
55717: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55718:
55719:
55720: XLA_AE_LINES_PKG.ValidateCurrentLine;
55721: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55722:
55723: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
55724: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
55717: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
55718:
55719:
55720: XLA_AE_LINES_PKG.ValidateCurrentLine;
55721: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
55722:
55723: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
55724: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
55725: ,p_balance_type_code => l_balance_type_code);
55868: --
55869: -- bulk performance
55870: --
55871: l_balance_type_code VARCHAR2(1);
55872: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
55873: l_log_module VARCHAR2(240);
55874:
55875: --
55876: -- Upgrade strategy
55938: ') = 'N'
55939: THEN
55940:
55941: --
55942: XLA_AE_LINES_PKG.SetNewLine;
55943:
55944: p_balance_type_code := l_balance_type_code;
55945: -- set the flag so later we will know whether the gain loss line needs to be created
55946:
55950:
55951: --
55952: -- bulk performance
55953: --
55954: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
55955: p_header_num => 0); -- 4262811
55956: --
55957: -- set accounting line options
55958: --
55955: p_header_num => 0); -- 4262811
55956: --
55957: -- set accounting line options
55958: --
55959: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
55960: p_natural_side_code => 'C'
55961: , p_gain_or_loss_flag => 'N'
55962: , p_gl_transfer_mode_code => 'S'
55963: , p_acct_entry_type_code => 'A'
55969: --
55970: --
55971: -- set accounting line type info
55972: --
55973: xla_ae_lines_pkg.SetAcctLineType
55974: (p_component_type => l_component_type
55975: ,p_event_type_code => l_event_type_code
55976: ,p_line_definition_owner_code => l_line_definition_owner_code
55977: ,p_line_definition_code => l_line_definition_code
55983: ,p_event_class_code => l_event_class_code);
55984: --
55985: -- set accounting class
55986: --
55987: xla_ae_lines_pkg.SetAcctClass(
55988: p_accounting_class_code => 'EDISC_NON_REC_TAX'
55989: , p_ae_header_id => l_ae_header_id
55990: );
55991:
55991:
55992: --
55993: -- set rounding class
55994: --
55995: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
55996: 'RECEIVABLE';
55997:
55998: --
55999: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
55995: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
55996: 'RECEIVABLE';
55997:
55998: --
55999: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56000: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56001: --
56002: -- bulk performance
56003: --
55996: 'RECEIVABLE';
55997:
55998: --
55999: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56000: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56001: --
56002: -- bulk performance
56003: --
56004: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56000: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56001: --
56002: -- bulk performance
56003: --
56004: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56005:
56006: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56007: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56008:
56002: -- bulk performance
56003: --
56004: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56005:
56006: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56007: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56008:
56009: -- 4955764
56010: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56006: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56007: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56008:
56009: -- 4955764
56010: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56011: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
56012:
56013: -- 4458381 Public Sector Enh
56014:
56050: l_rec_acct_attrs.array_num_value(15) := p_source_64;
56051: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
56052: l_rec_acct_attrs.array_char_value(16) := p_source_65;
56053:
56054: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56055: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56056:
56057: ---------------------------------------------------------------------------------------------------------------
56058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56051: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
56052: l_rec_acct_attrs.array_char_value(16) := p_source_65;
56053:
56054: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56055: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56056:
56057: ---------------------------------------------------------------------------------------------------------------
56058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56059: ---------------------------------------------------------------------------------------------------------------
56054: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56055: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56056:
56057: ---------------------------------------------------------------------------------------------------------------
56058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56059: ---------------------------------------------------------------------------------------------------------------
56060: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56061:
56062: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56056:
56057: ---------------------------------------------------------------------------------------------------------------
56058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56059: ---------------------------------------------------------------------------------------------------------------
56060: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56061:
56062: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56063: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56064:
56058: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56059: ---------------------------------------------------------------------------------------------------------------
56060: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56061:
56062: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56063: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56064:
56065: IF xla_accounting_cache_pkg.GetValueChar
56066: (p_source_code => 'LEDGER_CATEGORY_CODE'
56059: ---------------------------------------------------------------------------------------------------------------
56060: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56061:
56062: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56063: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56064:
56065: IF xla_accounting_cache_pkg.GetValueChar
56066: (p_source_code => 'LEDGER_CATEGORY_CODE'
56067: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
56070: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
56071: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
56072: )
56073: THEN
56074: xla_ae_lines_pkg.BflowUpgEntry
56075: (p_business_method_code => l_bflow_method_code
56076: ,p_business_class_code => l_bflow_class_code
56077: ,p_balance_type => l_balance_type_code);
56078: ELSE
56110: , x_value_type_code => l_adr_value_type_code
56111: , p_side => 'NA'
56112: );
56113:
56114: xla_ae_lines_pkg.set_ccid(
56115: p_code_combination_id => l_ccid
56116: , p_value_type_code => l_adr_value_type_code
56117: , p_transaction_coa_id => l_adr_transaction_coa_id
56118: , p_accounting_coa_id => l_adr_accounting_coa_id
56146: xla_accounting_err_pkg.build_message
56147: (p_appli_s_name => 'XLA'
56148: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
56149: ,p_token_1 => 'LINE_NUMBER'
56150: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
56151: ,p_token_2 => 'LINE_TYPE_NAME'
56152: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
56153: l_component_type
56154: ,l_component_code
56182: --
56183: --
56184: ------------------------------------------------------------------------------------------------
56185: -- 4219869 Business Flow
56186: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
56187: -- Prior Entry. Currently, the following code is always generated.
56188: ------------------------------------------------------------------------------------------------
56189: XLA_AE_LINES_PKG.ValidateCurrentLine;
56190:
56185: -- 4219869 Business Flow
56186: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
56187: -- Prior Entry. Currently, the following code is always generated.
56188: ------------------------------------------------------------------------------------------------
56189: XLA_AE_LINES_PKG.ValidateCurrentLine;
56190:
56191: ------------------------------------------------------------------------------------
56192: -- 4219869 Business Flow
56193: -- Populated credit and debit amounts -- Need to generate this within IF
56191: ------------------------------------------------------------------------------------
56192: -- 4219869 Business Flow
56193: -- Populated credit and debit amounts -- Need to generate this within IF
56194: ------------------------------------------------------------------------------------
56195: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
56196:
56197: ----------------------------------------------------------------------------------
56198: -- 4219869 Business Flow
56199: -- Update journal entry status -- Need to generate this within IF
56223: -- To allow MPA report to determine if it should generate report process
56224: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
56225: ------------------------------------------------------------------------------------------
56226:
56227: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
56228: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
56229: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
56230: -- call ADRs
56231: -- Bug 4922099
56224: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
56225: ------------------------------------------------------------------------------------------
56226:
56227: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
56228: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
56229: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
56230: -- call ADRs
56231: -- Bug 4922099
56232: --
56248: , x_value_type_code => l_adr_value_type_code
56249: , p_side => 'NA'
56250: );
56251:
56252: xla_ae_lines_pkg.set_ccid(
56253: p_code_combination_id => l_ccid
56254: , p_value_type_code => l_adr_value_type_code
56255: , p_transaction_coa_id => l_adr_transaction_coa_id
56256: , p_accounting_coa_id => l_adr_accounting_coa_id
56271:
56272: --
56273: -- Update the line information that should be overwritten
56274: --
56275: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
56276: p_header_num => 1);
56277: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
56278:
56279: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56273: -- Update the line information that should be overwritten
56274: --
56275: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
56276: p_header_num => 1);
56277: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
56278:
56279: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56280:
56281: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
56275: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
56276: p_header_num => 1);
56277: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
56278:
56279: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56280:
56281: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
56282: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
56283: END IF;
56278:
56279: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56280:
56281: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
56282: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
56283: END IF;
56284:
56285: --
56286: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
56285: --
56286: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
56287: --
56288: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
56289: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
56290: ELSE
56291: ---------------------------------------------------------------------------------------------------
56292: -- 4262811a Switch Sign
56293: ---------------------------------------------------------------------------------------------------
56290: ELSE
56291: ---------------------------------------------------------------------------------------------------
56292: -- 4262811a Switch Sign
56293: ---------------------------------------------------------------------------------------------------
56294: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56295: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56296: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56297: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56298: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56291: ---------------------------------------------------------------------------------------------------
56292: -- 4262811a Switch Sign
56293: ---------------------------------------------------------------------------------------------------
56294: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56295: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56296: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56297: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56298: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56299: -- 5132302
56292: -- 4262811a Switch Sign
56293: ---------------------------------------------------------------------------------------------------
56294: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56295: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56296: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56297: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56298: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56299: -- 5132302
56300: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56293: ---------------------------------------------------------------------------------------------------
56294: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56295: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56296: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56297: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56298: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56299: -- 5132302
56300: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56301: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56294: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56295: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56296: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56297: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56298: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56299: -- 5132302
56300: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56301: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56302:
56296: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56297: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56298: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56299: -- 5132302
56300: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56301: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56302:
56303: END IF;
56304:
56297: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56298: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56299: -- 5132302
56300: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56301: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56302:
56303: END IF;
56304:
56305: -- 4955764
56302:
56303: END IF;
56304:
56305: -- 4955764
56306: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56307: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
56308:
56309:
56310: XLA_AE_LINES_PKG.ValidateCurrentLine;
56306: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56307: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
56308:
56309:
56310: XLA_AE_LINES_PKG.ValidateCurrentLine;
56311: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
56312:
56313: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
56314: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
56307: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
56308:
56309:
56310: XLA_AE_LINES_PKG.ValidateCurrentLine;
56311: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
56312:
56313: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
56314: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
56315: ,p_balance_type_code => l_balance_type_code);
56438: --
56439: -- bulk performance
56440: --
56441: l_balance_type_code VARCHAR2(1);
56442: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
56443: l_log_module VARCHAR2(240);
56444:
56445: --
56446: -- Upgrade strategy
56507: IF XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id = XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id OR
56508: l_balance_type_code <> 'B' THEN
56509:
56510: --
56511: XLA_AE_LINES_PKG.SetNewLine;
56512:
56513: p_balance_type_code := l_balance_type_code;
56514: -- set the flag so later we will know whether the gain loss line needs to be created
56515:
56519:
56520: --
56521: -- bulk performance
56522: --
56523: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
56524: p_header_num => 0); -- 4262811
56525: --
56526: -- set accounting line options
56527: --
56524: p_header_num => 0); -- 4262811
56525: --
56526: -- set accounting line options
56527: --
56528: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
56529: p_natural_side_code => 'G'
56530: , p_gain_or_loss_flag => 'N'
56531: , p_gl_transfer_mode_code => 'S'
56532: , p_acct_entry_type_code => 'A'
56538: --
56539: --
56540: -- set accounting line type info
56541: --
56542: xla_ae_lines_pkg.SetAcctLineType
56543: (p_component_type => l_component_type
56544: ,p_event_type_code => l_event_type_code
56545: ,p_line_definition_owner_code => l_line_definition_owner_code
56546: ,p_line_definition_code => l_line_definition_code
56552: ,p_event_class_code => l_event_class_code);
56553: --
56554: -- set accounting class
56555: --
56556: xla_ae_lines_pkg.SetAcctClass(
56557: p_accounting_class_code => 'EXCHANGE_GAIN_LOSS'
56558: , p_ae_header_id => l_ae_header_id
56559: );
56560:
56560:
56561: --
56562: -- set rounding class
56563: --
56564: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
56565: 'EXCHANGE_GAIN_LOSS';
56566:
56567: --
56568: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56564: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
56565: 'EXCHANGE_GAIN_LOSS';
56566:
56567: --
56568: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56569: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56570: --
56571: -- bulk performance
56572: --
56565: 'EXCHANGE_GAIN_LOSS';
56566:
56567: --
56568: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
56569: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56570: --
56571: -- bulk performance
56572: --
56573: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56569: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
56570: --
56571: -- bulk performance
56572: --
56573: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56574:
56575: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56576: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56577:
56571: -- bulk performance
56572: --
56573: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
56574:
56575: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56576: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56577:
56578: -- 4955764
56579: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56575: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
56576: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
56577:
56578: -- 4955764
56579: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56580: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
56581:
56582: -- 4458381 Public Sector Enh
56583:
56599: l_rec_acct_attrs.array_num_value(5) := p_source_64;
56600: l_rec_acct_attrs.array_acct_attr_code(6) := 'PARTY_TYPE';
56601: l_rec_acct_attrs.array_char_value(6) := p_source_65;
56602:
56603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56605:
56606: ---------------------------------------------------------------------------------------------------------------
56607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56600: l_rec_acct_attrs.array_acct_attr_code(6) := 'PARTY_TYPE';
56601: l_rec_acct_attrs.array_char_value(6) := p_source_65;
56602:
56603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56605:
56606: ---------------------------------------------------------------------------------------------------------------
56607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56608: ---------------------------------------------------------------------------------------------------------------
56603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
56604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
56605:
56606: ---------------------------------------------------------------------------------------------------------------
56607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56608: ---------------------------------------------------------------------------------------------------------------
56609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56610:
56611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56605:
56606: ---------------------------------------------------------------------------------------------------------------
56607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56608: ---------------------------------------------------------------------------------------------------------------
56609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56610:
56611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56613:
56607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
56608: ---------------------------------------------------------------------------------------------------------------
56609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56610:
56611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56613:
56614: IF xla_accounting_cache_pkg.GetValueChar
56615: (p_source_code => 'LEDGER_CATEGORY_CODE'
56608: ---------------------------------------------------------------------------------------------------------------
56609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
56610:
56611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
56613:
56614: IF xla_accounting_cache_pkg.GetValueChar
56615: (p_source_code => 'LEDGER_CATEGORY_CODE'
56616: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
56619: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
56620: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
56621: )
56622: THEN
56623: xla_ae_lines_pkg.BflowUpgEntry
56624: (p_business_method_code => l_bflow_method_code
56625: ,p_business_class_code => l_bflow_class_code
56626: ,p_balance_type => l_balance_type_code);
56627: ELSE
56660: , x_value_type_code => l_adr_value_type_code
56661: , p_side => 'CREDIT'
56662: );
56663:
56664: xla_ae_lines_pkg.set_ccid(
56665: p_code_combination_id => l_ccid
56666: , p_value_type_code => l_adr_value_type_code
56667: , p_transaction_coa_id => l_adr_transaction_coa_id
56668: , p_accounting_coa_id => l_adr_accounting_coa_id
56687: , x_value_type_code => l_adr_value_type_code
56688: , p_side => 'DEBIT'
56689: );
56690:
56691: xla_ae_lines_pkg.set_ccid(
56692: p_code_combination_id => l_ccid
56693: , p_value_type_code => l_adr_value_type_code
56694: , p_transaction_coa_id => l_adr_transaction_coa_id
56695: , p_accounting_coa_id => l_adr_accounting_coa_id
56723: xla_accounting_err_pkg.build_message
56724: (p_appli_s_name => 'XLA'
56725: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
56726: ,p_token_1 => 'LINE_NUMBER'
56727: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
56728: ,p_token_2 => 'LINE_TYPE_NAME'
56729: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
56730: l_component_type
56731: ,l_component_code
56759: --
56760: --
56761: ------------------------------------------------------------------------------------------------
56762: -- 4219869 Business Flow
56763: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
56764: -- Prior Entry. Currently, the following code is always generated.
56765: ------------------------------------------------------------------------------------------------
56766: XLA_AE_LINES_PKG.ValidateCurrentLine;
56767:
56762: -- 4219869 Business Flow
56763: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
56764: -- Prior Entry. Currently, the following code is always generated.
56765: ------------------------------------------------------------------------------------------------
56766: XLA_AE_LINES_PKG.ValidateCurrentLine;
56767:
56768: ------------------------------------------------------------------------------------
56769: -- 4219869 Business Flow
56770: -- Populated credit and debit amounts -- Need to generate this within IF
56768: ------------------------------------------------------------------------------------
56769: -- 4219869 Business Flow
56770: -- Populated credit and debit amounts -- Need to generate this within IF
56771: ------------------------------------------------------------------------------------
56772: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
56773:
56774: ----------------------------------------------------------------------------------
56775: -- 4219869 Business Flow
56776: -- Update journal entry status -- Need to generate this within IF
56800: -- To allow MPA report to determine if it should generate report process
56801: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
56802: ------------------------------------------------------------------------------------------
56803:
56804: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
56805: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
56806: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
56807: -- call ADRs
56808: -- Bug 4922099
56801: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
56802: ------------------------------------------------------------------------------------------
56803:
56804: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
56805: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
56806: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
56807: -- call ADRs
56808: -- Bug 4922099
56809: --
56826: , x_value_type_code => l_adr_value_type_code
56827: , p_side => 'CREDIT'
56828: );
56829:
56830: xla_ae_lines_pkg.set_ccid(
56831: p_code_combination_id => l_ccid
56832: , p_value_type_code => l_adr_value_type_code
56833: , p_transaction_coa_id => l_adr_transaction_coa_id
56834: , p_accounting_coa_id => l_adr_accounting_coa_id
56853: , x_value_type_code => l_adr_value_type_code
56854: , p_side => 'DEBIT'
56855: );
56856:
56857: xla_ae_lines_pkg.set_ccid(
56858: p_code_combination_id => l_ccid
56859: , p_value_type_code => l_adr_value_type_code
56860: , p_transaction_coa_id => l_adr_transaction_coa_id
56861: , p_accounting_coa_id => l_adr_accounting_coa_id
56876:
56877: --
56878: -- Update the line information that should be overwritten
56879: --
56880: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
56881: p_header_num => 1);
56882: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
56883:
56884: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56878: -- Update the line information that should be overwritten
56879: --
56880: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
56881: p_header_num => 1);
56882: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
56883:
56884: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56885:
56886: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
56880: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
56881: p_header_num => 1);
56882: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
56883:
56884: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56885:
56886: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
56887: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
56888: END IF;
56883:
56884: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
56885:
56886: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
56887: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
56888: END IF;
56889:
56890: --
56891: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
56890: --
56891: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
56892: --
56893: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
56894: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
56895: ELSE
56896: ---------------------------------------------------------------------------------------------------
56897: -- 4262811a Switch Sign
56898: ---------------------------------------------------------------------------------------------------
56895: ELSE
56896: ---------------------------------------------------------------------------------------------------
56897: -- 4262811a Switch Sign
56898: ---------------------------------------------------------------------------------------------------
56899: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56900: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56901: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56902: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56903: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56896: ---------------------------------------------------------------------------------------------------
56897: -- 4262811a Switch Sign
56898: ---------------------------------------------------------------------------------------------------
56899: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56900: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56901: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56902: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56903: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56904: -- 5132302
56897: -- 4262811a Switch Sign
56898: ---------------------------------------------------------------------------------------------------
56899: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56900: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56901: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56902: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56903: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56904: -- 5132302
56905: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56898: ---------------------------------------------------------------------------------------------------
56899: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56900: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56901: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56902: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56903: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56904: -- 5132302
56905: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56906: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56899: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
56900: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56901: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56902: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56903: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56904: -- 5132302
56905: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56906: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56907:
56901: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56902: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56903: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56904: -- 5132302
56905: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56906: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56907:
56908: END IF;
56909:
56902: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
56903: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56904: -- 5132302
56905: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
56906: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
56907:
56908: END IF;
56909:
56910: -- 4955764
56907:
56908: END IF;
56909:
56910: -- 4955764
56911: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56912: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
56913:
56914:
56915: XLA_AE_LINES_PKG.ValidateCurrentLine;
56911: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
56912: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
56913:
56914:
56915: XLA_AE_LINES_PKG.ValidateCurrentLine;
56916: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
56917:
56918: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
56919: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
56912: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
56913:
56914:
56915: XLA_AE_LINES_PKG.ValidateCurrentLine;
56916: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
56917:
56918: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
56919: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
56920: ,p_balance_type_code => l_balance_type_code);
57064: --
57065: -- bulk performance
57066: --
57067: l_balance_type_code VARCHAR2(1);
57068: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
57069: l_log_module VARCHAR2(240);
57070:
57071: --
57072: -- Upgrade strategy
57136: ') = 'N'
57137: THEN
57138:
57139: --
57140: XLA_AE_LINES_PKG.SetNewLine;
57141:
57142: p_balance_type_code := l_balance_type_code;
57143: -- set the flag so later we will know whether the gain loss line needs to be created
57144:
57148:
57149: --
57150: -- bulk performance
57151: --
57152: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
57153: p_header_num => 0); -- 4262811
57154: --
57155: -- set accounting line options
57156: --
57153: p_header_num => 0); -- 4262811
57154: --
57155: -- set accounting line options
57156: --
57157: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
57158: p_natural_side_code => 'C'
57159: , p_gain_or_loss_flag => 'N'
57160: , p_gl_transfer_mode_code => 'S'
57161: , p_acct_entry_type_code => 'A'
57167: --
57168: --
57169: -- set accounting line type info
57170: --
57171: xla_ae_lines_pkg.SetAcctLineType
57172: (p_component_type => l_component_type
57173: ,p_event_type_code => l_event_type_code
57174: ,p_line_definition_owner_code => l_line_definition_owner_code
57175: ,p_line_definition_code => l_line_definition_code
57181: ,p_event_class_code => l_event_class_code);
57182: --
57183: -- set accounting class
57184: --
57185: xla_ae_lines_pkg.SetAcctClass(
57186: p_accounting_class_code => 'FACTOR'
57187: , p_ae_header_id => l_ae_header_id
57188: );
57189:
57189:
57190: --
57191: -- set rounding class
57192: --
57193: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
57194: 'RECEIVABLE';
57195:
57196: --
57197: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
57193: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
57194: 'RECEIVABLE';
57195:
57196: --
57197: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
57198: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
57199: --
57200: -- bulk performance
57201: --
57194: 'RECEIVABLE';
57195:
57196: --
57197: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
57198: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
57199: --
57200: -- bulk performance
57201: --
57202: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
57198: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
57199: --
57200: -- bulk performance
57201: --
57202: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
57203:
57204: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
57205: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
57206:
57200: -- bulk performance
57201: --
57202: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
57203:
57204: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
57205: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
57206:
57207: -- 4955764
57208: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57204: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
57205: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
57206:
57207: -- 4955764
57208: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57209: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
57210:
57211: -- 4458381 Public Sector Enh
57212:
57248: l_rec_acct_attrs.array_num_value(15) := p_source_64;
57249: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
57250: l_rec_acct_attrs.array_char_value(16) := p_source_65;
57251:
57252: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
57253: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
57254:
57255: ---------------------------------------------------------------------------------------------------------------
57256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57249: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
57250: l_rec_acct_attrs.array_char_value(16) := p_source_65;
57251:
57252: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
57253: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
57254:
57255: ---------------------------------------------------------------------------------------------------------------
57256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57257: ---------------------------------------------------------------------------------------------------------------
57252: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
57253: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
57254:
57255: ---------------------------------------------------------------------------------------------------------------
57256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57257: ---------------------------------------------------------------------------------------------------------------
57258: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57259:
57260: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57254:
57255: ---------------------------------------------------------------------------------------------------------------
57256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57257: ---------------------------------------------------------------------------------------------------------------
57258: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57259:
57260: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57261: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57262:
57256: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57257: ---------------------------------------------------------------------------------------------------------------
57258: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57259:
57260: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57261: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57262:
57263: IF xla_accounting_cache_pkg.GetValueChar
57264: (p_source_code => 'LEDGER_CATEGORY_CODE'
57257: ---------------------------------------------------------------------------------------------------------------
57258: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57259:
57260: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57261: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57262:
57263: IF xla_accounting_cache_pkg.GetValueChar
57264: (p_source_code => 'LEDGER_CATEGORY_CODE'
57265: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
57268: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
57269: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
57270: )
57271: THEN
57272: xla_ae_lines_pkg.BflowUpgEntry
57273: (p_business_method_code => l_bflow_method_code
57274: ,p_business_class_code => l_bflow_class_code
57275: ,p_balance_type => l_balance_type_code);
57276: ELSE
57308: , x_value_type_code => l_adr_value_type_code
57309: , p_side => 'NA'
57310: );
57311:
57312: xla_ae_lines_pkg.set_ccid(
57313: p_code_combination_id => l_ccid
57314: , p_value_type_code => l_adr_value_type_code
57315: , p_transaction_coa_id => l_adr_transaction_coa_id
57316: , p_accounting_coa_id => l_adr_accounting_coa_id
57344: xla_accounting_err_pkg.build_message
57345: (p_appli_s_name => 'XLA'
57346: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
57347: ,p_token_1 => 'LINE_NUMBER'
57348: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
57349: ,p_token_2 => 'LINE_TYPE_NAME'
57350: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
57351: l_component_type
57352: ,l_component_code
57380: --
57381: --
57382: ------------------------------------------------------------------------------------------------
57383: -- 4219869 Business Flow
57384: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
57385: -- Prior Entry. Currently, the following code is always generated.
57386: ------------------------------------------------------------------------------------------------
57387: XLA_AE_LINES_PKG.ValidateCurrentLine;
57388:
57383: -- 4219869 Business Flow
57384: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
57385: -- Prior Entry. Currently, the following code is always generated.
57386: ------------------------------------------------------------------------------------------------
57387: XLA_AE_LINES_PKG.ValidateCurrentLine;
57388:
57389: ------------------------------------------------------------------------------------
57390: -- 4219869 Business Flow
57391: -- Populated credit and debit amounts -- Need to generate this within IF
57389: ------------------------------------------------------------------------------------
57390: -- 4219869 Business Flow
57391: -- Populated credit and debit amounts -- Need to generate this within IF
57392: ------------------------------------------------------------------------------------
57393: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57394:
57395: ----------------------------------------------------------------------------------
57396: -- 4219869 Business Flow
57397: -- Update journal entry status -- Need to generate this within IF
57421: -- To allow MPA report to determine if it should generate report process
57422: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
57423: ------------------------------------------------------------------------------------------
57424:
57425: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
57426: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
57427: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
57428: -- call ADRs
57429: -- Bug 4922099
57422: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
57423: ------------------------------------------------------------------------------------------
57424:
57425: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
57426: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
57427: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
57428: -- call ADRs
57429: -- Bug 4922099
57430: --
57446: , x_value_type_code => l_adr_value_type_code
57447: , p_side => 'NA'
57448: );
57449:
57450: xla_ae_lines_pkg.set_ccid(
57451: p_code_combination_id => l_ccid
57452: , p_value_type_code => l_adr_value_type_code
57453: , p_transaction_coa_id => l_adr_transaction_coa_id
57454: , p_accounting_coa_id => l_adr_accounting_coa_id
57469:
57470: --
57471: -- Update the line information that should be overwritten
57472: --
57473: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
57474: p_header_num => 1);
57475: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
57476:
57477: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57471: -- Update the line information that should be overwritten
57472: --
57473: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
57474: p_header_num => 1);
57475: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
57476:
57477: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57478:
57479: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
57473: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
57474: p_header_num => 1);
57475: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
57476:
57477: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57478:
57479: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
57480: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
57481: END IF;
57476:
57477: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
57478:
57479: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
57480: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
57481: END IF;
57482:
57483: --
57484: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
57483: --
57484: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
57485: --
57486: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
57487: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
57488: ELSE
57489: ---------------------------------------------------------------------------------------------------
57490: -- 4262811a Switch Sign
57491: ---------------------------------------------------------------------------------------------------
57488: ELSE
57489: ---------------------------------------------------------------------------------------------------
57490: -- 4262811a Switch Sign
57491: ---------------------------------------------------------------------------------------------------
57492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57489: ---------------------------------------------------------------------------------------------------
57490: -- 4262811a Switch Sign
57491: ---------------------------------------------------------------------------------------------------
57492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57497: -- 5132302
57490: -- 4262811a Switch Sign
57491: ---------------------------------------------------------------------------------------------------
57492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57497: -- 5132302
57498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57491: ---------------------------------------------------------------------------------------------------
57492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57497: -- 5132302
57498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57499: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57492: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
57493: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57497: -- 5132302
57498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57499: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57500:
57494: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57497: -- 5132302
57498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57499: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57500:
57501: END IF;
57502:
57495: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
57496: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57497: -- 5132302
57498: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
57499: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
57500:
57501: END IF;
57502:
57503: -- 4955764
57500:
57501: END IF;
57502:
57503: -- 4955764
57504: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57505: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
57506:
57507:
57508: XLA_AE_LINES_PKG.ValidateCurrentLine;
57504: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57505: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
57506:
57507:
57508: XLA_AE_LINES_PKG.ValidateCurrentLine;
57509: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57510:
57511: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
57512: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
57505: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
57506:
57507:
57508: XLA_AE_LINES_PKG.ValidateCurrentLine;
57509: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57510:
57511: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
57512: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
57513: ,p_balance_type_code => l_balance_type_code);
57658: --
57659: -- bulk performance
57660: --
57661: l_balance_type_code VARCHAR2(1);
57662: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
57663: l_log_module VARCHAR2(240);
57664:
57665: --
57666: -- Upgrade strategy
57730: ') = 'N'
57731: THEN
57732:
57733: --
57734: XLA_AE_LINES_PKG.SetNewLine;
57735:
57736: p_balance_type_code := l_balance_type_code;
57737: -- set the flag so later we will know whether the gain loss line needs to be created
57738:
57742:
57743: --
57744: -- bulk performance
57745: --
57746: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
57747: p_header_num => 0); -- 4262811
57748: --
57749: -- set accounting line options
57750: --
57747: p_header_num => 0); -- 4262811
57748: --
57749: -- set accounting line options
57750: --
57751: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
57752: p_natural_side_code => 'C'
57753: , p_gain_or_loss_flag => 'N'
57754: , p_gl_transfer_mode_code => 'S'
57755: , p_acct_entry_type_code => 'A'
57761: --
57762: --
57763: -- set accounting line type info
57764: --
57765: xla_ae_lines_pkg.SetAcctLineType
57766: (p_component_type => l_component_type
57767: ,p_event_type_code => l_event_type_code
57768: ,p_line_definition_owner_code => l_line_definition_owner_code
57769: ,p_line_definition_code => l_line_definition_code
57775: ,p_event_class_code => l_event_class_code);
57776: --
57777: -- set accounting class
57778: --
57779: xla_ae_lines_pkg.SetAcctClass(
57780: p_accounting_class_code => 'FAC_BR'
57781: , p_ae_header_id => l_ae_header_id
57782: );
57783:
57783:
57784: --
57785: -- set rounding class
57786: --
57787: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
57788: 'RECEIVABLE';
57789:
57790: --
57791: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
57787: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
57788: 'RECEIVABLE';
57789:
57790: --
57791: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
57792: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
57793: --
57794: -- bulk performance
57795: --
57788: 'RECEIVABLE';
57789:
57790: --
57791: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
57792: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
57793: --
57794: -- bulk performance
57795: --
57796: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
57792: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
57793: --
57794: -- bulk performance
57795: --
57796: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
57797:
57798: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
57799: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
57800:
57794: -- bulk performance
57795: --
57796: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
57797:
57798: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
57799: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
57800:
57801: -- 4955764
57802: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57798: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
57799: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
57800:
57801: -- 4955764
57802: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
57803: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
57804:
57805: -- 4458381 Public Sector Enh
57806:
57842: l_rec_acct_attrs.array_num_value(15) := p_source_64;
57843: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
57844: l_rec_acct_attrs.array_char_value(16) := p_source_65;
57845:
57846: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
57847: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
57848:
57849: ---------------------------------------------------------------------------------------------------------------
57850: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57843: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
57844: l_rec_acct_attrs.array_char_value(16) := p_source_65;
57845:
57846: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
57847: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
57848:
57849: ---------------------------------------------------------------------------------------------------------------
57850: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57851: ---------------------------------------------------------------------------------------------------------------
57846: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
57847: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
57848:
57849: ---------------------------------------------------------------------------------------------------------------
57850: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57851: ---------------------------------------------------------------------------------------------------------------
57852: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57853:
57854: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57848:
57849: ---------------------------------------------------------------------------------------------------------------
57850: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57851: ---------------------------------------------------------------------------------------------------------------
57852: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57853:
57854: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57855: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57856:
57850: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
57851: ---------------------------------------------------------------------------------------------------------------
57852: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57853:
57854: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57855: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57856:
57857: IF xla_accounting_cache_pkg.GetValueChar
57858: (p_source_code => 'LEDGER_CATEGORY_CODE'
57851: ---------------------------------------------------------------------------------------------------------------
57852: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
57853:
57854: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57855: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
57856:
57857: IF xla_accounting_cache_pkg.GetValueChar
57858: (p_source_code => 'LEDGER_CATEGORY_CODE'
57859: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
57862: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
57863: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
57864: )
57865: THEN
57866: xla_ae_lines_pkg.BflowUpgEntry
57867: (p_business_method_code => l_bflow_method_code
57868: ,p_business_class_code => l_bflow_class_code
57869: ,p_balance_type => l_balance_type_code);
57870: ELSE
57902: , x_value_type_code => l_adr_value_type_code
57903: , p_side => 'NA'
57904: );
57905:
57906: xla_ae_lines_pkg.set_ccid(
57907: p_code_combination_id => l_ccid
57908: , p_value_type_code => l_adr_value_type_code
57909: , p_transaction_coa_id => l_adr_transaction_coa_id
57910: , p_accounting_coa_id => l_adr_accounting_coa_id
57938: xla_accounting_err_pkg.build_message
57939: (p_appli_s_name => 'XLA'
57940: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
57941: ,p_token_1 => 'LINE_NUMBER'
57942: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
57943: ,p_token_2 => 'LINE_TYPE_NAME'
57944: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
57945: l_component_type
57946: ,l_component_code
57974: --
57975: --
57976: ------------------------------------------------------------------------------------------------
57977: -- 4219869 Business Flow
57978: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
57979: -- Prior Entry. Currently, the following code is always generated.
57980: ------------------------------------------------------------------------------------------------
57981: XLA_AE_LINES_PKG.ValidateCurrentLine;
57982:
57977: -- 4219869 Business Flow
57978: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
57979: -- Prior Entry. Currently, the following code is always generated.
57980: ------------------------------------------------------------------------------------------------
57981: XLA_AE_LINES_PKG.ValidateCurrentLine;
57982:
57983: ------------------------------------------------------------------------------------
57984: -- 4219869 Business Flow
57985: -- Populated credit and debit amounts -- Need to generate this within IF
57983: ------------------------------------------------------------------------------------
57984: -- 4219869 Business Flow
57985: -- Populated credit and debit amounts -- Need to generate this within IF
57986: ------------------------------------------------------------------------------------
57987: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
57988:
57989: ----------------------------------------------------------------------------------
57990: -- 4219869 Business Flow
57991: -- Update journal entry status -- Need to generate this within IF
58015: -- To allow MPA report to determine if it should generate report process
58016: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
58017: ------------------------------------------------------------------------------------------
58018:
58019: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
58020: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
58021: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
58022: -- call ADRs
58023: -- Bug 4922099
58016: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
58017: ------------------------------------------------------------------------------------------
58018:
58019: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
58020: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
58021: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
58022: -- call ADRs
58023: -- Bug 4922099
58024: --
58040: , x_value_type_code => l_adr_value_type_code
58041: , p_side => 'NA'
58042: );
58043:
58044: xla_ae_lines_pkg.set_ccid(
58045: p_code_combination_id => l_ccid
58046: , p_value_type_code => l_adr_value_type_code
58047: , p_transaction_coa_id => l_adr_transaction_coa_id
58048: , p_accounting_coa_id => l_adr_accounting_coa_id
58063:
58064: --
58065: -- Update the line information that should be overwritten
58066: --
58067: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
58068: p_header_num => 1);
58069: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
58070:
58071: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58065: -- Update the line information that should be overwritten
58066: --
58067: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
58068: p_header_num => 1);
58069: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
58070:
58071: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58072:
58073: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
58067: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
58068: p_header_num => 1);
58069: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
58070:
58071: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58072:
58073: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
58074: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
58075: END IF;
58070:
58071: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58072:
58073: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
58074: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
58075: END IF;
58076:
58077: --
58078: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
58077: --
58078: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
58079: --
58080: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
58081: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
58082: ELSE
58083: ---------------------------------------------------------------------------------------------------
58084: -- 4262811a Switch Sign
58085: ---------------------------------------------------------------------------------------------------
58082: ELSE
58083: ---------------------------------------------------------------------------------------------------
58084: -- 4262811a Switch Sign
58085: ---------------------------------------------------------------------------------------------------
58086: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58088: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58090: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58083: ---------------------------------------------------------------------------------------------------
58084: -- 4262811a Switch Sign
58085: ---------------------------------------------------------------------------------------------------
58086: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58088: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58090: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58091: -- 5132302
58084: -- 4262811a Switch Sign
58085: ---------------------------------------------------------------------------------------------------
58086: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58088: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58090: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58091: -- 5132302
58092: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58085: ---------------------------------------------------------------------------------------------------
58086: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58088: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58090: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58091: -- 5132302
58092: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58093: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58086: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58087: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58088: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58090: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58091: -- 5132302
58092: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58093: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58094:
58088: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58090: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58091: -- 5132302
58092: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58093: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58094:
58095: END IF;
58096:
58089: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58090: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58091: -- 5132302
58092: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58093: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58094:
58095: END IF;
58096:
58097: -- 4955764
58094:
58095: END IF;
58096:
58097: -- 4955764
58098: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58099: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
58100:
58101:
58102: XLA_AE_LINES_PKG.ValidateCurrentLine;
58098: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58099: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
58100:
58101:
58102: XLA_AE_LINES_PKG.ValidateCurrentLine;
58103: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
58104:
58105: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
58106: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
58099: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
58100:
58101:
58102: XLA_AE_LINES_PKG.ValidateCurrentLine;
58103: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
58104:
58105: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
58106: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
58107: ,p_balance_type_code => l_balance_type_code);
58252: --
58253: -- bulk performance
58254: --
58255: l_balance_type_code VARCHAR2(1);
58256: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
58257: l_log_module VARCHAR2(240);
58258:
58259: --
58260: -- Upgrade strategy
58326: ') = 'N'
58327: THEN
58328:
58329: --
58330: XLA_AE_LINES_PKG.SetNewLine;
58331:
58332: p_balance_type_code := l_balance_type_code;
58333: -- set the flag so later we will know whether the gain loss line needs to be created
58334:
58338:
58339: --
58340: -- bulk performance
58341: --
58342: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
58343: p_header_num => 0); -- 4262811
58344: --
58345: -- set accounting line options
58346: --
58343: p_header_num => 0); -- 4262811
58344: --
58345: -- set accounting line options
58346: --
58347: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
58348: p_natural_side_code => 'C'
58349: , p_gain_or_loss_flag => 'N'
58350: , p_gl_transfer_mode_code => 'S'
58351: , p_acct_entry_type_code => 'A'
58357: --
58358: --
58359: -- set accounting line type info
58360: --
58361: xla_ae_lines_pkg.SetAcctLineType
58362: (p_component_type => l_component_type
58363: ,p_event_type_code => l_event_type_code
58364: ,p_line_definition_owner_code => l_line_definition_owner_code
58365: ,p_line_definition_code => l_line_definition_code
58371: ,p_event_class_code => l_event_class_code);
58372: --
58373: -- set accounting class
58374: --
58375: xla_ae_lines_pkg.SetAcctClass(
58376: p_accounting_class_code => 'PMT_NET'
58377: , p_ae_header_id => l_ae_header_id
58378: );
58379:
58379:
58380: --
58381: -- set rounding class
58382: --
58383: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
58384: 'RECEIVABLE';
58385:
58386: --
58387: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58383: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
58384: 'RECEIVABLE';
58385:
58386: --
58387: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58388: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58389: --
58390: -- bulk performance
58391: --
58384: 'RECEIVABLE';
58385:
58386: --
58387: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58388: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58389: --
58390: -- bulk performance
58391: --
58392: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58388: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58389: --
58390: -- bulk performance
58391: --
58392: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58393:
58394: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58395: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58396:
58390: -- bulk performance
58391: --
58392: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58393:
58394: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58395: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58396:
58397: -- 4955764
58398: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58394: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58395: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58396:
58397: -- 4955764
58398: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58399: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
58400:
58401: -- 4458381 Public Sector Enh
58402:
58438: l_rec_acct_attrs.array_num_value(15) := p_source_64;
58439: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
58440: l_rec_acct_attrs.array_char_value(16) := p_source_65;
58441:
58442: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
58443: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
58444:
58445: ---------------------------------------------------------------------------------------------------------------
58446: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58439: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
58440: l_rec_acct_attrs.array_char_value(16) := p_source_65;
58441:
58442: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
58443: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
58444:
58445: ---------------------------------------------------------------------------------------------------------------
58446: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58447: ---------------------------------------------------------------------------------------------------------------
58442: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
58443: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
58444:
58445: ---------------------------------------------------------------------------------------------------------------
58446: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58447: ---------------------------------------------------------------------------------------------------------------
58448: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58449:
58450: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58444:
58445: ---------------------------------------------------------------------------------------------------------------
58446: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58447: ---------------------------------------------------------------------------------------------------------------
58448: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58449:
58450: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58451: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58452:
58446: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
58447: ---------------------------------------------------------------------------------------------------------------
58448: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58449:
58450: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58451: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58452:
58453: IF xla_accounting_cache_pkg.GetValueChar
58454: (p_source_code => 'LEDGER_CATEGORY_CODE'
58447: ---------------------------------------------------------------------------------------------------------------
58448: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
58449:
58450: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58451: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
58452:
58453: IF xla_accounting_cache_pkg.GetValueChar
58454: (p_source_code => 'LEDGER_CATEGORY_CODE'
58455: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
58458: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
58459: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
58460: )
58461: THEN
58462: xla_ae_lines_pkg.BflowUpgEntry
58463: (p_business_method_code => l_bflow_method_code
58464: ,p_business_class_code => l_bflow_class_code
58465: ,p_balance_type => l_balance_type_code);
58466: ELSE
58498: , x_value_type_code => l_adr_value_type_code
58499: , p_side => 'NA'
58500: );
58501:
58502: xla_ae_lines_pkg.set_ccid(
58503: p_code_combination_id => l_ccid
58504: , p_value_type_code => l_adr_value_type_code
58505: , p_transaction_coa_id => l_adr_transaction_coa_id
58506: , p_accounting_coa_id => l_adr_accounting_coa_id
58534: xla_accounting_err_pkg.build_message
58535: (p_appli_s_name => 'XLA'
58536: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
58537: ,p_token_1 => 'LINE_NUMBER'
58538: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
58539: ,p_token_2 => 'LINE_TYPE_NAME'
58540: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
58541: l_component_type
58542: ,l_component_code
58570: --
58571: --
58572: ------------------------------------------------------------------------------------------------
58573: -- 4219869 Business Flow
58574: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
58575: -- Prior Entry. Currently, the following code is always generated.
58576: ------------------------------------------------------------------------------------------------
58577: XLA_AE_LINES_PKG.ValidateCurrentLine;
58578:
58573: -- 4219869 Business Flow
58574: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
58575: -- Prior Entry. Currently, the following code is always generated.
58576: ------------------------------------------------------------------------------------------------
58577: XLA_AE_LINES_PKG.ValidateCurrentLine;
58578:
58579: ------------------------------------------------------------------------------------
58580: -- 4219869 Business Flow
58581: -- Populated credit and debit amounts -- Need to generate this within IF
58579: ------------------------------------------------------------------------------------
58580: -- 4219869 Business Flow
58581: -- Populated credit and debit amounts -- Need to generate this within IF
58582: ------------------------------------------------------------------------------------
58583: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
58584:
58585: ----------------------------------------------------------------------------------
58586: -- 4219869 Business Flow
58587: -- Update journal entry status -- Need to generate this within IF
58611: -- To allow MPA report to determine if it should generate report process
58612: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
58613: ------------------------------------------------------------------------------------------
58614:
58615: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
58616: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
58617: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
58618: -- call ADRs
58619: -- Bug 4922099
58612: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
58613: ------------------------------------------------------------------------------------------
58614:
58615: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
58616: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
58617: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
58618: -- call ADRs
58619: -- Bug 4922099
58620: --
58636: , x_value_type_code => l_adr_value_type_code
58637: , p_side => 'NA'
58638: );
58639:
58640: xla_ae_lines_pkg.set_ccid(
58641: p_code_combination_id => l_ccid
58642: , p_value_type_code => l_adr_value_type_code
58643: , p_transaction_coa_id => l_adr_transaction_coa_id
58644: , p_accounting_coa_id => l_adr_accounting_coa_id
58659:
58660: --
58661: -- Update the line information that should be overwritten
58662: --
58663: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
58664: p_header_num => 1);
58665: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
58666:
58667: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58661: -- Update the line information that should be overwritten
58662: --
58663: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
58664: p_header_num => 1);
58665: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
58666:
58667: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58668:
58669: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
58663: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
58664: p_header_num => 1);
58665: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
58666:
58667: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58668:
58669: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
58670: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
58671: END IF;
58666:
58667: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
58668:
58669: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
58670: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
58671: END IF;
58672:
58673: --
58674: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
58673: --
58674: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
58675: --
58676: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
58677: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
58678: ELSE
58679: ---------------------------------------------------------------------------------------------------
58680: -- 4262811a Switch Sign
58681: ---------------------------------------------------------------------------------------------------
58678: ELSE
58679: ---------------------------------------------------------------------------------------------------
58680: -- 4262811a Switch Sign
58681: ---------------------------------------------------------------------------------------------------
58682: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58684: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58686: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58679: ---------------------------------------------------------------------------------------------------
58680: -- 4262811a Switch Sign
58681: ---------------------------------------------------------------------------------------------------
58682: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58684: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58686: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58687: -- 5132302
58680: -- 4262811a Switch Sign
58681: ---------------------------------------------------------------------------------------------------
58682: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58684: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58686: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58687: -- 5132302
58688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58681: ---------------------------------------------------------------------------------------------------
58682: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58684: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58686: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58687: -- 5132302
58688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58689: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58682: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
58683: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58684: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58686: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58687: -- 5132302
58688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58689: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58690:
58684: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58686: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58687: -- 5132302
58688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58689: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58690:
58691: END IF;
58692:
58685: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
58686: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58687: -- 5132302
58688: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
58689: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
58690:
58691: END IF;
58692:
58693: -- 4955764
58690:
58691: END IF;
58692:
58693: -- 4955764
58694: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58695: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
58696:
58697:
58698: XLA_AE_LINES_PKG.ValidateCurrentLine;
58694: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58695: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
58696:
58697:
58698: XLA_AE_LINES_PKG.ValidateCurrentLine;
58699: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
58700:
58701: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
58702: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
58695: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
58696:
58697:
58698: XLA_AE_LINES_PKG.ValidateCurrentLine;
58699: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
58700:
58701: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
58702: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
58703: ,p_balance_type_code => l_balance_type_code);
58848: --
58849: -- bulk performance
58850: --
58851: l_balance_type_code VARCHAR2(1);
58852: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
58853: l_log_module VARCHAR2(240);
58854:
58855: --
58856: -- Upgrade strategy
58920: ') = 'N'
58921: THEN
58922:
58923: --
58924: XLA_AE_LINES_PKG.SetNewLine;
58925:
58926: p_balance_type_code := l_balance_type_code;
58927: -- set the flag so later we will know whether the gain loss line needs to be created
58928:
58932:
58933: --
58934: -- bulk performance
58935: --
58936: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
58937: p_header_num => 0); -- 4262811
58938: --
58939: -- set accounting line options
58940: --
58937: p_header_num => 0); -- 4262811
58938: --
58939: -- set accounting line options
58940: --
58941: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
58942: p_natural_side_code => 'C'
58943: , p_gain_or_loss_flag => 'N'
58944: , p_gl_transfer_mode_code => 'S'
58945: , p_acct_entry_type_code => 'A'
58951: --
58952: --
58953: -- set accounting line type info
58954: --
58955: xla_ae_lines_pkg.SetAcctLineType
58956: (p_component_type => l_component_type
58957: ,p_event_type_code => l_event_type_code
58958: ,p_line_definition_owner_code => l_line_definition_owner_code
58959: ,p_line_definition_code => l_line_definition_code
58965: ,p_event_class_code => l_event_class_code);
58966: --
58967: -- set accounting class
58968: --
58969: xla_ae_lines_pkg.SetAcctClass(
58970: p_accounting_class_code => 'PREPAY'
58971: , p_ae_header_id => l_ae_header_id
58972: );
58973:
58973:
58974: --
58975: -- set rounding class
58976: --
58977: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
58978: 'RECEIVABLE';
58979:
58980: --
58981: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58977: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
58978: 'RECEIVABLE';
58979:
58980: --
58981: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58982: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58983: --
58984: -- bulk performance
58985: --
58978: 'RECEIVABLE';
58979:
58980: --
58981: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
58982: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58983: --
58984: -- bulk performance
58985: --
58986: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58982: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
58983: --
58984: -- bulk performance
58985: --
58986: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58987:
58988: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58989: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58990:
58984: -- bulk performance
58985: --
58986: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
58987:
58988: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58989: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58990:
58991: -- 4955764
58992: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58988: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
58989: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
58990:
58991: -- 4955764
58992: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
58993: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
58994:
58995: -- 4458381 Public Sector Enh
58996:
59032: l_rec_acct_attrs.array_num_value(15) := p_source_64;
59033: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
59034: l_rec_acct_attrs.array_char_value(16) := p_source_65;
59035:
59036: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
59037: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
59038:
59039: ---------------------------------------------------------------------------------------------------------------
59040: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59033: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
59034: l_rec_acct_attrs.array_char_value(16) := p_source_65;
59035:
59036: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
59037: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
59038:
59039: ---------------------------------------------------------------------------------------------------------------
59040: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59041: ---------------------------------------------------------------------------------------------------------------
59036: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
59037: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
59038:
59039: ---------------------------------------------------------------------------------------------------------------
59040: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59041: ---------------------------------------------------------------------------------------------------------------
59042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59043:
59044: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59038:
59039: ---------------------------------------------------------------------------------------------------------------
59040: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59041: ---------------------------------------------------------------------------------------------------------------
59042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59043:
59044: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59045: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59046:
59040: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59041: ---------------------------------------------------------------------------------------------------------------
59042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59043:
59044: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59045: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59046:
59047: IF xla_accounting_cache_pkg.GetValueChar
59048: (p_source_code => 'LEDGER_CATEGORY_CODE'
59041: ---------------------------------------------------------------------------------------------------------------
59042: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59043:
59044: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59045: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59046:
59047: IF xla_accounting_cache_pkg.GetValueChar
59048: (p_source_code => 'LEDGER_CATEGORY_CODE'
59049: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
59052: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
59053: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
59054: )
59055: THEN
59056: xla_ae_lines_pkg.BflowUpgEntry
59057: (p_business_method_code => l_bflow_method_code
59058: ,p_business_class_code => l_bflow_class_code
59059: ,p_balance_type => l_balance_type_code);
59060: ELSE
59092: , x_value_type_code => l_adr_value_type_code
59093: , p_side => 'NA'
59094: );
59095:
59096: xla_ae_lines_pkg.set_ccid(
59097: p_code_combination_id => l_ccid
59098: , p_value_type_code => l_adr_value_type_code
59099: , p_transaction_coa_id => l_adr_transaction_coa_id
59100: , p_accounting_coa_id => l_adr_accounting_coa_id
59128: xla_accounting_err_pkg.build_message
59129: (p_appli_s_name => 'XLA'
59130: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
59131: ,p_token_1 => 'LINE_NUMBER'
59132: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
59133: ,p_token_2 => 'LINE_TYPE_NAME'
59134: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
59135: l_component_type
59136: ,l_component_code
59164: --
59165: --
59166: ------------------------------------------------------------------------------------------------
59167: -- 4219869 Business Flow
59168: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
59169: -- Prior Entry. Currently, the following code is always generated.
59170: ------------------------------------------------------------------------------------------------
59171: XLA_AE_LINES_PKG.ValidateCurrentLine;
59172:
59167: -- 4219869 Business Flow
59168: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
59169: -- Prior Entry. Currently, the following code is always generated.
59170: ------------------------------------------------------------------------------------------------
59171: XLA_AE_LINES_PKG.ValidateCurrentLine;
59172:
59173: ------------------------------------------------------------------------------------
59174: -- 4219869 Business Flow
59175: -- Populated credit and debit amounts -- Need to generate this within IF
59173: ------------------------------------------------------------------------------------
59174: -- 4219869 Business Flow
59175: -- Populated credit and debit amounts -- Need to generate this within IF
59176: ------------------------------------------------------------------------------------
59177: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59178:
59179: ----------------------------------------------------------------------------------
59180: -- 4219869 Business Flow
59181: -- Update journal entry status -- Need to generate this within IF
59205: -- To allow MPA report to determine if it should generate report process
59206: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
59207: ------------------------------------------------------------------------------------------
59208:
59209: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
59210: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
59211: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
59212: -- call ADRs
59213: -- Bug 4922099
59206: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
59207: ------------------------------------------------------------------------------------------
59208:
59209: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
59210: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
59211: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
59212: -- call ADRs
59213: -- Bug 4922099
59214: --
59230: , x_value_type_code => l_adr_value_type_code
59231: , p_side => 'NA'
59232: );
59233:
59234: xla_ae_lines_pkg.set_ccid(
59235: p_code_combination_id => l_ccid
59236: , p_value_type_code => l_adr_value_type_code
59237: , p_transaction_coa_id => l_adr_transaction_coa_id
59238: , p_accounting_coa_id => l_adr_accounting_coa_id
59253:
59254: --
59255: -- Update the line information that should be overwritten
59256: --
59257: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59258: p_header_num => 1);
59259: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59260:
59261: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59255: -- Update the line information that should be overwritten
59256: --
59257: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59258: p_header_num => 1);
59259: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59260:
59261: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59262:
59263: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59257: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59258: p_header_num => 1);
59259: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59260:
59261: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59262:
59263: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59264: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
59265: END IF;
59260:
59261: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59262:
59263: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59264: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
59265: END IF;
59266:
59267: --
59268: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
59267: --
59268: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
59269: --
59270: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
59271: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
59272: ELSE
59273: ---------------------------------------------------------------------------------------------------
59274: -- 4262811a Switch Sign
59275: ---------------------------------------------------------------------------------------------------
59272: ELSE
59273: ---------------------------------------------------------------------------------------------------
59274: -- 4262811a Switch Sign
59275: ---------------------------------------------------------------------------------------------------
59276: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59277: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59278: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59279: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59280: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59273: ---------------------------------------------------------------------------------------------------
59274: -- 4262811a Switch Sign
59275: ---------------------------------------------------------------------------------------------------
59276: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59277: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59278: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59279: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59280: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59281: -- 5132302
59274: -- 4262811a Switch Sign
59275: ---------------------------------------------------------------------------------------------------
59276: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59277: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59278: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59279: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59280: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59281: -- 5132302
59282: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59275: ---------------------------------------------------------------------------------------------------
59276: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59277: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59278: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59279: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59280: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59281: -- 5132302
59282: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59283: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59276: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59277: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59278: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59279: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59280: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59281: -- 5132302
59282: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59283: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59284:
59278: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59279: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59280: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59281: -- 5132302
59282: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59283: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59284:
59285: END IF;
59286:
59279: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59280: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59281: -- 5132302
59282: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59283: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59284:
59285: END IF;
59286:
59287: -- 4955764
59284:
59285: END IF;
59286:
59287: -- 4955764
59288: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59289: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59290:
59291:
59292: XLA_AE_LINES_PKG.ValidateCurrentLine;
59288: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59289: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59290:
59291:
59292: XLA_AE_LINES_PKG.ValidateCurrentLine;
59293: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59294:
59295: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
59296: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
59289: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59290:
59291:
59292: XLA_AE_LINES_PKG.ValidateCurrentLine;
59293: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59294:
59295: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
59296: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
59297: ,p_balance_type_code => l_balance_type_code);
59442: --
59443: -- bulk performance
59444: --
59445: l_balance_type_code VARCHAR2(1);
59446: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
59447: l_log_module VARCHAR2(240);
59448:
59449: --
59450: -- Upgrade strategy
59520: ') = 'N')
59521: THEN
59522:
59523: --
59524: XLA_AE_LINES_PKG.SetNewLine;
59525:
59526: p_balance_type_code := l_balance_type_code;
59527: -- set the flag so later we will know whether the gain loss line needs to be created
59528:
59532:
59533: --
59534: -- bulk performance
59535: --
59536: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
59537: p_header_num => 0); -- 4262811
59538: --
59539: -- set accounting line options
59540: --
59537: p_header_num => 0); -- 4262811
59538: --
59539: -- set accounting line options
59540: --
59541: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
59542: p_natural_side_code => 'C'
59543: , p_gain_or_loss_flag => 'N'
59544: , p_gl_transfer_mode_code => 'S'
59545: , p_acct_entry_type_code => 'A'
59551: --
59552: --
59553: -- set accounting line type info
59554: --
59555: xla_ae_lines_pkg.SetAcctLineType
59556: (p_component_type => l_component_type
59557: ,p_event_type_code => l_event_type_code
59558: ,p_line_definition_owner_code => l_line_definition_owner_code
59559: ,p_line_definition_code => l_line_definition_code
59565: ,p_event_class_code => l_event_class_code);
59566: --
59567: -- set accounting class
59568: --
59569: xla_ae_lines_pkg.SetAcctClass(
59570: p_accounting_class_code => 'REFUND'
59571: , p_ae_header_id => l_ae_header_id
59572: );
59573:
59573:
59574: --
59575: -- set rounding class
59576: --
59577: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
59578: 'RECEIVABLE';
59579:
59580: --
59581: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
59577: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
59578: 'RECEIVABLE';
59579:
59580: --
59581: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
59582: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
59583: --
59584: -- bulk performance
59585: --
59578: 'RECEIVABLE';
59579:
59580: --
59581: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
59582: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
59583: --
59584: -- bulk performance
59585: --
59586: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
59582: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
59583: --
59584: -- bulk performance
59585: --
59586: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
59587:
59588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
59589: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
59590:
59584: -- bulk performance
59585: --
59586: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
59587:
59588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
59589: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
59590:
59591: -- 4955764
59592: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
59589: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
59590:
59591: -- 4955764
59592: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59593: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
59594:
59595: -- 4458381 Public Sector Enh
59596:
59632: l_rec_acct_attrs.array_num_value(15) := p_source_64;
59633: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
59634: l_rec_acct_attrs.array_char_value(16) := p_source_65;
59635:
59636: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
59637: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
59638:
59639: ---------------------------------------------------------------------------------------------------------------
59640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59633: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
59634: l_rec_acct_attrs.array_char_value(16) := p_source_65;
59635:
59636: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
59637: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
59638:
59639: ---------------------------------------------------------------------------------------------------------------
59640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59641: ---------------------------------------------------------------------------------------------------------------
59636: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
59637: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
59638:
59639: ---------------------------------------------------------------------------------------------------------------
59640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59641: ---------------------------------------------------------------------------------------------------------------
59642: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59643:
59644: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59638:
59639: ---------------------------------------------------------------------------------------------------------------
59640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59641: ---------------------------------------------------------------------------------------------------------------
59642: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59643:
59644: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59645: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59646:
59640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
59641: ---------------------------------------------------------------------------------------------------------------
59642: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59643:
59644: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59645: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59646:
59647: IF xla_accounting_cache_pkg.GetValueChar
59648: (p_source_code => 'LEDGER_CATEGORY_CODE'
59641: ---------------------------------------------------------------------------------------------------------------
59642: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
59643:
59644: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59645: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
59646:
59647: IF xla_accounting_cache_pkg.GetValueChar
59648: (p_source_code => 'LEDGER_CATEGORY_CODE'
59649: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
59652: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
59653: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
59654: )
59655: THEN
59656: xla_ae_lines_pkg.BflowUpgEntry
59657: (p_business_method_code => l_bflow_method_code
59658: ,p_business_class_code => l_bflow_class_code
59659: ,p_balance_type => l_balance_type_code);
59660: ELSE
59692: , x_value_type_code => l_adr_value_type_code
59693: , p_side => 'NA'
59694: );
59695:
59696: xla_ae_lines_pkg.set_ccid(
59697: p_code_combination_id => l_ccid
59698: , p_value_type_code => l_adr_value_type_code
59699: , p_transaction_coa_id => l_adr_transaction_coa_id
59700: , p_accounting_coa_id => l_adr_accounting_coa_id
59728: xla_accounting_err_pkg.build_message
59729: (p_appli_s_name => 'XLA'
59730: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
59731: ,p_token_1 => 'LINE_NUMBER'
59732: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
59733: ,p_token_2 => 'LINE_TYPE_NAME'
59734: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
59735: l_component_type
59736: ,l_component_code
59764: --
59765: --
59766: ------------------------------------------------------------------------------------------------
59767: -- 4219869 Business Flow
59768: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
59769: -- Prior Entry. Currently, the following code is always generated.
59770: ------------------------------------------------------------------------------------------------
59771: XLA_AE_LINES_PKG.ValidateCurrentLine;
59772:
59767: -- 4219869 Business Flow
59768: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
59769: -- Prior Entry. Currently, the following code is always generated.
59770: ------------------------------------------------------------------------------------------------
59771: XLA_AE_LINES_PKG.ValidateCurrentLine;
59772:
59773: ------------------------------------------------------------------------------------
59774: -- 4219869 Business Flow
59775: -- Populated credit and debit amounts -- Need to generate this within IF
59773: ------------------------------------------------------------------------------------
59774: -- 4219869 Business Flow
59775: -- Populated credit and debit amounts -- Need to generate this within IF
59776: ------------------------------------------------------------------------------------
59777: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59778:
59779: ----------------------------------------------------------------------------------
59780: -- 4219869 Business Flow
59781: -- Update journal entry status -- Need to generate this within IF
59805: -- To allow MPA report to determine if it should generate report process
59806: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
59807: ------------------------------------------------------------------------------------------
59808:
59809: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
59810: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
59811: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
59812: -- call ADRs
59813: -- Bug 4922099
59806: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
59807: ------------------------------------------------------------------------------------------
59808:
59809: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
59810: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
59811: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
59812: -- call ADRs
59813: -- Bug 4922099
59814: --
59830: , x_value_type_code => l_adr_value_type_code
59831: , p_side => 'NA'
59832: );
59833:
59834: xla_ae_lines_pkg.set_ccid(
59835: p_code_combination_id => l_ccid
59836: , p_value_type_code => l_adr_value_type_code
59837: , p_transaction_coa_id => l_adr_transaction_coa_id
59838: , p_accounting_coa_id => l_adr_accounting_coa_id
59853:
59854: --
59855: -- Update the line information that should be overwritten
59856: --
59857: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59858: p_header_num => 1);
59859: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59860:
59861: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59855: -- Update the line information that should be overwritten
59856: --
59857: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59858: p_header_num => 1);
59859: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59860:
59861: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59862:
59863: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59857: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
59858: p_header_num => 1);
59859: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
59860:
59861: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59862:
59863: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59864: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
59865: END IF;
59860:
59861: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
59862:
59863: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
59864: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
59865: END IF;
59866:
59867: --
59868: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
59867: --
59868: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
59869: --
59870: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
59871: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
59872: ELSE
59873: ---------------------------------------------------------------------------------------------------
59874: -- 4262811a Switch Sign
59875: ---------------------------------------------------------------------------------------------------
59872: ELSE
59873: ---------------------------------------------------------------------------------------------------
59874: -- 4262811a Switch Sign
59875: ---------------------------------------------------------------------------------------------------
59876: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59877: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59879: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59873: ---------------------------------------------------------------------------------------------------
59874: -- 4262811a Switch Sign
59875: ---------------------------------------------------------------------------------------------------
59876: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59877: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59879: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59881: -- 5132302
59874: -- 4262811a Switch Sign
59875: ---------------------------------------------------------------------------------------------------
59876: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59877: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59879: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59881: -- 5132302
59882: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59875: ---------------------------------------------------------------------------------------------------
59876: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59877: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59879: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59881: -- 5132302
59882: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59883: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59876: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
59877: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59879: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59881: -- 5132302
59882: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59883: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59884:
59878: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59879: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59881: -- 5132302
59882: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59883: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59884:
59885: END IF;
59886:
59879: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
59880: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59881: -- 5132302
59882: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
59883: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
59884:
59885: END IF;
59886:
59887: -- 4955764
59884:
59885: END IF;
59886:
59887: -- 4955764
59888: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59889: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59890:
59891:
59892: XLA_AE_LINES_PKG.ValidateCurrentLine;
59888: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
59889: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59890:
59891:
59892: XLA_AE_LINES_PKG.ValidateCurrentLine;
59893: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59894:
59895: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
59896: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
59889: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
59890:
59891:
59892: XLA_AE_LINES_PKG.ValidateCurrentLine;
59893: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
59894:
59895: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
59896: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
59897: ,p_balance_type_code => l_balance_type_code);
60042: --
60043: -- bulk performance
60044: --
60045: l_balance_type_code VARCHAR2(1);
60046: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
60047: l_log_module VARCHAR2(240);
60048:
60049: --
60050: -- Upgrade strategy
60114: ') = 'N'
60115: THEN
60116:
60117: --
60118: XLA_AE_LINES_PKG.SetNewLine;
60119:
60120: p_balance_type_code := l_balance_type_code;
60121: -- set the flag so later we will know whether the gain loss line needs to be created
60122:
60126:
60127: --
60128: -- bulk performance
60129: --
60130: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
60131: p_header_num => 0); -- 4262811
60132: --
60133: -- set accounting line options
60134: --
60131: p_header_num => 0); -- 4262811
60132: --
60133: -- set accounting line options
60134: --
60135: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
60136: p_natural_side_code => 'C'
60137: , p_gain_or_loss_flag => 'N'
60138: , p_gl_transfer_mode_code => 'S'
60139: , p_acct_entry_type_code => 'A'
60145: --
60146: --
60147: -- set accounting line type info
60148: --
60149: xla_ae_lines_pkg.SetAcctLineType
60150: (p_component_type => l_component_type
60151: ,p_event_type_code => l_event_type_code
60152: ,p_line_definition_owner_code => l_line_definition_owner_code
60153: ,p_line_definition_code => l_line_definition_code
60159: ,p_event_class_code => l_event_class_code);
60160: --
60161: -- set accounting class
60162: --
60163: xla_ae_lines_pkg.SetAcctClass(
60164: p_accounting_class_code => 'REMITTANCE'
60165: , p_ae_header_id => l_ae_header_id
60166: );
60167:
60167:
60168: --
60169: -- set rounding class
60170: --
60171: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
60172: 'RECEIVABLE';
60173:
60174: --
60175: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60171: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
60172: 'RECEIVABLE';
60173:
60174: --
60175: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60176: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60177: --
60178: -- bulk performance
60179: --
60172: 'RECEIVABLE';
60173:
60174: --
60175: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60176: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60177: --
60178: -- bulk performance
60179: --
60180: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60176: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60177: --
60178: -- bulk performance
60179: --
60180: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60181:
60182: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60183: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60184:
60178: -- bulk performance
60179: --
60180: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60181:
60182: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60183: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60184:
60185: -- 4955764
60186: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60182: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60183: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60184:
60185: -- 4955764
60186: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60187: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
60188:
60189: -- 4458381 Public Sector Enh
60190:
60226: l_rec_acct_attrs.array_num_value(15) := p_source_64;
60227: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
60228: l_rec_acct_attrs.array_char_value(16) := p_source_65;
60229:
60230: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60231: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60232:
60233: ---------------------------------------------------------------------------------------------------------------
60234: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60227: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
60228: l_rec_acct_attrs.array_char_value(16) := p_source_65;
60229:
60230: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60231: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60232:
60233: ---------------------------------------------------------------------------------------------------------------
60234: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60235: ---------------------------------------------------------------------------------------------------------------
60230: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60231: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60232:
60233: ---------------------------------------------------------------------------------------------------------------
60234: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60235: ---------------------------------------------------------------------------------------------------------------
60236: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60237:
60238: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60232:
60233: ---------------------------------------------------------------------------------------------------------------
60234: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60235: ---------------------------------------------------------------------------------------------------------------
60236: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60237:
60238: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60239: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60240:
60234: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60235: ---------------------------------------------------------------------------------------------------------------
60236: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60237:
60238: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60239: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60240:
60241: IF xla_accounting_cache_pkg.GetValueChar
60242: (p_source_code => 'LEDGER_CATEGORY_CODE'
60235: ---------------------------------------------------------------------------------------------------------------
60236: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60237:
60238: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60239: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60240:
60241: IF xla_accounting_cache_pkg.GetValueChar
60242: (p_source_code => 'LEDGER_CATEGORY_CODE'
60243: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
60246: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
60247: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
60248: )
60249: THEN
60250: xla_ae_lines_pkg.BflowUpgEntry
60251: (p_business_method_code => l_bflow_method_code
60252: ,p_business_class_code => l_bflow_class_code
60253: ,p_balance_type => l_balance_type_code);
60254: ELSE
60286: , x_value_type_code => l_adr_value_type_code
60287: , p_side => 'NA'
60288: );
60289:
60290: xla_ae_lines_pkg.set_ccid(
60291: p_code_combination_id => l_ccid
60292: , p_value_type_code => l_adr_value_type_code
60293: , p_transaction_coa_id => l_adr_transaction_coa_id
60294: , p_accounting_coa_id => l_adr_accounting_coa_id
60322: xla_accounting_err_pkg.build_message
60323: (p_appli_s_name => 'XLA'
60324: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
60325: ,p_token_1 => 'LINE_NUMBER'
60326: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
60327: ,p_token_2 => 'LINE_TYPE_NAME'
60328: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
60329: l_component_type
60330: ,l_component_code
60358: --
60359: --
60360: ------------------------------------------------------------------------------------------------
60361: -- 4219869 Business Flow
60362: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
60363: -- Prior Entry. Currently, the following code is always generated.
60364: ------------------------------------------------------------------------------------------------
60365: XLA_AE_LINES_PKG.ValidateCurrentLine;
60366:
60361: -- 4219869 Business Flow
60362: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
60363: -- Prior Entry. Currently, the following code is always generated.
60364: ------------------------------------------------------------------------------------------------
60365: XLA_AE_LINES_PKG.ValidateCurrentLine;
60366:
60367: ------------------------------------------------------------------------------------
60368: -- 4219869 Business Flow
60369: -- Populated credit and debit amounts -- Need to generate this within IF
60367: ------------------------------------------------------------------------------------
60368: -- 4219869 Business Flow
60369: -- Populated credit and debit amounts -- Need to generate this within IF
60370: ------------------------------------------------------------------------------------
60371: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
60372:
60373: ----------------------------------------------------------------------------------
60374: -- 4219869 Business Flow
60375: -- Update journal entry status -- Need to generate this within IF
60399: -- To allow MPA report to determine if it should generate report process
60400: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
60401: ------------------------------------------------------------------------------------------
60402:
60403: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
60404: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
60405: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
60406: -- call ADRs
60407: -- Bug 4922099
60400: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
60401: ------------------------------------------------------------------------------------------
60402:
60403: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
60404: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
60405: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
60406: -- call ADRs
60407: -- Bug 4922099
60408: --
60424: , x_value_type_code => l_adr_value_type_code
60425: , p_side => 'NA'
60426: );
60427:
60428: xla_ae_lines_pkg.set_ccid(
60429: p_code_combination_id => l_ccid
60430: , p_value_type_code => l_adr_value_type_code
60431: , p_transaction_coa_id => l_adr_transaction_coa_id
60432: , p_accounting_coa_id => l_adr_accounting_coa_id
60447:
60448: --
60449: -- Update the line information that should be overwritten
60450: --
60451: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
60452: p_header_num => 1);
60453: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
60454:
60455: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
60449: -- Update the line information that should be overwritten
60450: --
60451: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
60452: p_header_num => 1);
60453: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
60454:
60455: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
60456:
60457: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
60451: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
60452: p_header_num => 1);
60453: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
60454:
60455: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
60456:
60457: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
60458: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
60459: END IF;
60454:
60455: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
60456:
60457: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
60458: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
60459: END IF;
60460:
60461: --
60462: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
60461: --
60462: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
60463: --
60464: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
60465: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
60466: ELSE
60467: ---------------------------------------------------------------------------------------------------
60468: -- 4262811a Switch Sign
60469: ---------------------------------------------------------------------------------------------------
60466: ELSE
60467: ---------------------------------------------------------------------------------------------------
60468: -- 4262811a Switch Sign
60469: ---------------------------------------------------------------------------------------------------
60470: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60467: ---------------------------------------------------------------------------------------------------
60468: -- 4262811a Switch Sign
60469: ---------------------------------------------------------------------------------------------------
60470: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60475: -- 5132302
60468: -- 4262811a Switch Sign
60469: ---------------------------------------------------------------------------------------------------
60470: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60475: -- 5132302
60476: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60469: ---------------------------------------------------------------------------------------------------
60470: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60475: -- 5132302
60476: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60470: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
60471: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60475: -- 5132302
60476: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60478:
60472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60475: -- 5132302
60476: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60478:
60479: END IF;
60480:
60473: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
60474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60475: -- 5132302
60476: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
60477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
60478:
60479: END IF;
60480:
60481: -- 4955764
60478:
60479: END IF;
60480:
60481: -- 4955764
60482: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60483: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
60484:
60485:
60486: XLA_AE_LINES_PKG.ValidateCurrentLine;
60482: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60483: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
60484:
60485:
60486: XLA_AE_LINES_PKG.ValidateCurrentLine;
60487: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
60488:
60489: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
60490: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
60483: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
60484:
60485:
60486: XLA_AE_LINES_PKG.ValidateCurrentLine;
60487: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
60488:
60489: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
60490: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
60491: ,p_balance_type_code => l_balance_type_code);
60636: --
60637: -- bulk performance
60638: --
60639: l_balance_type_code VARCHAR2(1);
60640: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
60641: l_log_module VARCHAR2(240);
60642:
60643: --
60644: -- Upgrade strategy
60708: ') = 'N'
60709: THEN
60710:
60711: --
60712: XLA_AE_LINES_PKG.SetNewLine;
60713:
60714: p_balance_type_code := l_balance_type_code;
60715: -- set the flag so later we will know whether the gain loss line needs to be created
60716:
60720:
60721: --
60722: -- bulk performance
60723: --
60724: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
60725: p_header_num => 0); -- 4262811
60726: --
60727: -- set accounting line options
60728: --
60725: p_header_num => 0); -- 4262811
60726: --
60727: -- set accounting line options
60728: --
60729: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
60730: p_natural_side_code => 'C'
60731: , p_gain_or_loss_flag => 'N'
60732: , p_gl_transfer_mode_code => 'S'
60733: , p_acct_entry_type_code => 'A'
60739: --
60740: --
60741: -- set accounting line type info
60742: --
60743: xla_ae_lines_pkg.SetAcctLineType
60744: (p_component_type => l_component_type
60745: ,p_event_type_code => l_event_type_code
60746: ,p_line_definition_owner_code => l_line_definition_owner_code
60747: ,p_line_definition_code => l_line_definition_code
60753: ,p_event_class_code => l_event_class_code);
60754: --
60755: -- set accounting class
60756: --
60757: xla_ae_lines_pkg.SetAcctClass(
60758: p_accounting_class_code => 'REM_BR'
60759: , p_ae_header_id => l_ae_header_id
60760: );
60761:
60761:
60762: --
60763: -- set rounding class
60764: --
60765: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
60766: 'RECEIVABLE';
60767:
60768: --
60769: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60765: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
60766: 'RECEIVABLE';
60767:
60768: --
60769: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60770: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60771: --
60772: -- bulk performance
60773: --
60766: 'RECEIVABLE';
60767:
60768: --
60769: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
60770: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60771: --
60772: -- bulk performance
60773: --
60774: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60770: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
60771: --
60772: -- bulk performance
60773: --
60774: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60775:
60776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60777: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60778:
60772: -- bulk performance
60773: --
60774: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
60775:
60776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60777: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60778:
60779: -- 4955764
60780: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
60777: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
60778:
60779: -- 4955764
60780: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
60781: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
60782:
60783: -- 4458381 Public Sector Enh
60784:
60820: l_rec_acct_attrs.array_num_value(15) := p_source_64;
60821: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
60822: l_rec_acct_attrs.array_char_value(16) := p_source_65;
60823:
60824: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60825: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60826:
60827: ---------------------------------------------------------------------------------------------------------------
60828: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60821: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
60822: l_rec_acct_attrs.array_char_value(16) := p_source_65;
60823:
60824: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60825: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60826:
60827: ---------------------------------------------------------------------------------------------------------------
60828: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60829: ---------------------------------------------------------------------------------------------------------------
60824: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
60825: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
60826:
60827: ---------------------------------------------------------------------------------------------------------------
60828: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60829: ---------------------------------------------------------------------------------------------------------------
60830: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60831:
60832: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60826:
60827: ---------------------------------------------------------------------------------------------------------------
60828: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60829: ---------------------------------------------------------------------------------------------------------------
60830: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60831:
60832: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60833: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60834:
60828: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
60829: ---------------------------------------------------------------------------------------------------------------
60830: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60831:
60832: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60833: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60834:
60835: IF xla_accounting_cache_pkg.GetValueChar
60836: (p_source_code => 'LEDGER_CATEGORY_CODE'
60829: ---------------------------------------------------------------------------------------------------------------
60830: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
60831:
60832: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60833: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
60834:
60835: IF xla_accounting_cache_pkg.GetValueChar
60836: (p_source_code => 'LEDGER_CATEGORY_CODE'
60837: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
60840: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
60841: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
60842: )
60843: THEN
60844: xla_ae_lines_pkg.BflowUpgEntry
60845: (p_business_method_code => l_bflow_method_code
60846: ,p_business_class_code => l_bflow_class_code
60847: ,p_balance_type => l_balance_type_code);
60848: ELSE
60880: , x_value_type_code => l_adr_value_type_code
60881: , p_side => 'NA'
60882: );
60883:
60884: xla_ae_lines_pkg.set_ccid(
60885: p_code_combination_id => l_ccid
60886: , p_value_type_code => l_adr_value_type_code
60887: , p_transaction_coa_id => l_adr_transaction_coa_id
60888: , p_accounting_coa_id => l_adr_accounting_coa_id
60916: xla_accounting_err_pkg.build_message
60917: (p_appli_s_name => 'XLA'
60918: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
60919: ,p_token_1 => 'LINE_NUMBER'
60920: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
60921: ,p_token_2 => 'LINE_TYPE_NAME'
60922: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
60923: l_component_type
60924: ,l_component_code
60952: --
60953: --
60954: ------------------------------------------------------------------------------------------------
60955: -- 4219869 Business Flow
60956: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
60957: -- Prior Entry. Currently, the following code is always generated.
60958: ------------------------------------------------------------------------------------------------
60959: XLA_AE_LINES_PKG.ValidateCurrentLine;
60960:
60955: -- 4219869 Business Flow
60956: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
60957: -- Prior Entry. Currently, the following code is always generated.
60958: ------------------------------------------------------------------------------------------------
60959: XLA_AE_LINES_PKG.ValidateCurrentLine;
60960:
60961: ------------------------------------------------------------------------------------
60962: -- 4219869 Business Flow
60963: -- Populated credit and debit amounts -- Need to generate this within IF
60961: ------------------------------------------------------------------------------------
60962: -- 4219869 Business Flow
60963: -- Populated credit and debit amounts -- Need to generate this within IF
60964: ------------------------------------------------------------------------------------
60965: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
60966:
60967: ----------------------------------------------------------------------------------
60968: -- 4219869 Business Flow
60969: -- Update journal entry status -- Need to generate this within IF
60993: -- To allow MPA report to determine if it should generate report process
60994: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
60995: ------------------------------------------------------------------------------------------
60996:
60997: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
60998: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
60999: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
61000: -- call ADRs
61001: -- Bug 4922099
60994: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
60995: ------------------------------------------------------------------------------------------
60996:
60997: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
60998: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
60999: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
61000: -- call ADRs
61001: -- Bug 4922099
61002: --
61018: , x_value_type_code => l_adr_value_type_code
61019: , p_side => 'NA'
61020: );
61021:
61022: xla_ae_lines_pkg.set_ccid(
61023: p_code_combination_id => l_ccid
61024: , p_value_type_code => l_adr_value_type_code
61025: , p_transaction_coa_id => l_adr_transaction_coa_id
61026: , p_accounting_coa_id => l_adr_accounting_coa_id
61041:
61042: --
61043: -- Update the line information that should be overwritten
61044: --
61045: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61046: p_header_num => 1);
61047: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61048:
61049: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61043: -- Update the line information that should be overwritten
61044: --
61045: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61046: p_header_num => 1);
61047: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61048:
61049: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61050:
61051: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61045: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61046: p_header_num => 1);
61047: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61048:
61049: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61050:
61051: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61052: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
61053: END IF;
61048:
61049: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61050:
61051: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61052: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
61053: END IF;
61054:
61055: --
61056: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
61055: --
61056: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
61057: --
61058: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
61059: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
61060: ELSE
61061: ---------------------------------------------------------------------------------------------------
61062: -- 4262811a Switch Sign
61063: ---------------------------------------------------------------------------------------------------
61060: ELSE
61061: ---------------------------------------------------------------------------------------------------
61062: -- 4262811a Switch Sign
61063: ---------------------------------------------------------------------------------------------------
61064: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61065: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61067: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61068: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61061: ---------------------------------------------------------------------------------------------------
61062: -- 4262811a Switch Sign
61063: ---------------------------------------------------------------------------------------------------
61064: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61065: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61067: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61068: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61069: -- 5132302
61062: -- 4262811a Switch Sign
61063: ---------------------------------------------------------------------------------------------------
61064: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61065: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61067: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61068: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61069: -- 5132302
61070: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61063: ---------------------------------------------------------------------------------------------------
61064: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61065: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61067: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61068: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61069: -- 5132302
61070: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61071: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61064: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61065: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61067: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61068: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61069: -- 5132302
61070: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61071: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61072:
61066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61067: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61068: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61069: -- 5132302
61070: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61071: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61072:
61073: END IF;
61074:
61067: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61068: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61069: -- 5132302
61070: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61071: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61072:
61073: END IF;
61074:
61075: -- 4955764
61072:
61073: END IF;
61074:
61075: -- 4955764
61076: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61077: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61078:
61079:
61080: XLA_AE_LINES_PKG.ValidateCurrentLine;
61076: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61077: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61078:
61079:
61080: XLA_AE_LINES_PKG.ValidateCurrentLine;
61081: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61082:
61083: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
61084: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
61077: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61078:
61079:
61080: XLA_AE_LINES_PKG.ValidateCurrentLine;
61081: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61082:
61083: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
61084: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
61085: ,p_balance_type_code => l_balance_type_code);
61228: --
61229: -- bulk performance
61230: --
61231: l_balance_type_code VARCHAR2(1);
61232: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
61233: l_log_module VARCHAR2(240);
61234:
61235: --
61236: -- Upgrade strategy
61298: ') = 'N'
61299: THEN
61300:
61301: --
61302: XLA_AE_LINES_PKG.SetNewLine;
61303:
61304: p_balance_type_code := l_balance_type_code;
61305: -- set the flag so later we will know whether the gain loss line needs to be created
61306:
61310:
61311: --
61312: -- bulk performance
61313: --
61314: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
61315: p_header_num => 0); -- 4262811
61316: --
61317: -- set accounting line options
61318: --
61315: p_header_num => 0); -- 4262811
61316: --
61317: -- set accounting line options
61318: --
61319: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
61320: p_natural_side_code => 'C'
61321: , p_gain_or_loss_flag => 'N'
61322: , p_gl_transfer_mode_code => 'S'
61323: , p_acct_entry_type_code => 'A'
61329: --
61330: --
61331: -- set accounting line type info
61332: --
61333: xla_ae_lines_pkg.SetAcctLineType
61334: (p_component_type => l_component_type
61335: ,p_event_type_code => l_event_type_code
61336: ,p_line_definition_owner_code => l_line_definition_owner_code
61337: ,p_line_definition_code => l_line_definition_code
61343: ,p_event_class_code => l_event_class_code);
61344: --
61345: -- set accounting class
61346: --
61347: xla_ae_lines_pkg.SetAcctClass(
61348: p_accounting_class_code => 'TAX'
61349: , p_ae_header_id => l_ae_header_id
61350: );
61351:
61351:
61352: --
61353: -- set rounding class
61354: --
61355: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
61356: 'RECEIVABLE';
61357:
61358: --
61359: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
61355: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
61356: 'RECEIVABLE';
61357:
61358: --
61359: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
61360: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
61361: --
61362: -- bulk performance
61363: --
61356: 'RECEIVABLE';
61357:
61358: --
61359: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
61360: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
61361: --
61362: -- bulk performance
61363: --
61364: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
61360: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
61361: --
61362: -- bulk performance
61363: --
61364: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
61365:
61366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
61367: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
61368:
61362: -- bulk performance
61363: --
61364: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
61365:
61366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
61367: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
61368:
61369: -- 4955764
61370: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
61367: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
61368:
61369: -- 4955764
61370: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61371: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
61372:
61373: -- 4458381 Public Sector Enh
61374:
61410: l_rec_acct_attrs.array_num_value(15) := p_source_64;
61411: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
61412: l_rec_acct_attrs.array_char_value(16) := p_source_65;
61413:
61414: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
61415: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
61416:
61417: ---------------------------------------------------------------------------------------------------------------
61418: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61411: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
61412: l_rec_acct_attrs.array_char_value(16) := p_source_65;
61413:
61414: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
61415: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
61416:
61417: ---------------------------------------------------------------------------------------------------------------
61418: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61419: ---------------------------------------------------------------------------------------------------------------
61414: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
61415: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
61416:
61417: ---------------------------------------------------------------------------------------------------------------
61418: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61419: ---------------------------------------------------------------------------------------------------------------
61420: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61421:
61422: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61416:
61417: ---------------------------------------------------------------------------------------------------------------
61418: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61419: ---------------------------------------------------------------------------------------------------------------
61420: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61421:
61422: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61423: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61424:
61418: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
61419: ---------------------------------------------------------------------------------------------------------------
61420: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61421:
61422: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61423: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61424:
61425: IF xla_accounting_cache_pkg.GetValueChar
61426: (p_source_code => 'LEDGER_CATEGORY_CODE'
61419: ---------------------------------------------------------------------------------------------------------------
61420: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
61421:
61422: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61423: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
61424:
61425: IF xla_accounting_cache_pkg.GetValueChar
61426: (p_source_code => 'LEDGER_CATEGORY_CODE'
61427: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
61430: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
61431: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
61432: )
61433: THEN
61434: xla_ae_lines_pkg.BflowUpgEntry
61435: (p_business_method_code => l_bflow_method_code
61436: ,p_business_class_code => l_bflow_class_code
61437: ,p_balance_type => l_balance_type_code);
61438: ELSE
61470: , x_value_type_code => l_adr_value_type_code
61471: , p_side => 'NA'
61472: );
61473:
61474: xla_ae_lines_pkg.set_ccid(
61475: p_code_combination_id => l_ccid
61476: , p_value_type_code => l_adr_value_type_code
61477: , p_transaction_coa_id => l_adr_transaction_coa_id
61478: , p_accounting_coa_id => l_adr_accounting_coa_id
61506: xla_accounting_err_pkg.build_message
61507: (p_appli_s_name => 'XLA'
61508: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
61509: ,p_token_1 => 'LINE_NUMBER'
61510: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
61511: ,p_token_2 => 'LINE_TYPE_NAME'
61512: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
61513: l_component_type
61514: ,l_component_code
61542: --
61543: --
61544: ------------------------------------------------------------------------------------------------
61545: -- 4219869 Business Flow
61546: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
61547: -- Prior Entry. Currently, the following code is always generated.
61548: ------------------------------------------------------------------------------------------------
61549: XLA_AE_LINES_PKG.ValidateCurrentLine;
61550:
61545: -- 4219869 Business Flow
61546: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
61547: -- Prior Entry. Currently, the following code is always generated.
61548: ------------------------------------------------------------------------------------------------
61549: XLA_AE_LINES_PKG.ValidateCurrentLine;
61550:
61551: ------------------------------------------------------------------------------------
61552: -- 4219869 Business Flow
61553: -- Populated credit and debit amounts -- Need to generate this within IF
61551: ------------------------------------------------------------------------------------
61552: -- 4219869 Business Flow
61553: -- Populated credit and debit amounts -- Need to generate this within IF
61554: ------------------------------------------------------------------------------------
61555: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61556:
61557: ----------------------------------------------------------------------------------
61558: -- 4219869 Business Flow
61559: -- Update journal entry status -- Need to generate this within IF
61583: -- To allow MPA report to determine if it should generate report process
61584: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
61585: ------------------------------------------------------------------------------------------
61586:
61587: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
61588: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
61589: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
61590: -- call ADRs
61591: -- Bug 4922099
61584: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
61585: ------------------------------------------------------------------------------------------
61586:
61587: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
61588: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
61589: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
61590: -- call ADRs
61591: -- Bug 4922099
61592: --
61608: , x_value_type_code => l_adr_value_type_code
61609: , p_side => 'NA'
61610: );
61611:
61612: xla_ae_lines_pkg.set_ccid(
61613: p_code_combination_id => l_ccid
61614: , p_value_type_code => l_adr_value_type_code
61615: , p_transaction_coa_id => l_adr_transaction_coa_id
61616: , p_accounting_coa_id => l_adr_accounting_coa_id
61631:
61632: --
61633: -- Update the line information that should be overwritten
61634: --
61635: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61636: p_header_num => 1);
61637: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61638:
61639: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61633: -- Update the line information that should be overwritten
61634: --
61635: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61636: p_header_num => 1);
61637: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61638:
61639: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61640:
61641: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61635: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
61636: p_header_num => 1);
61637: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
61638:
61639: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61640:
61641: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61642: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
61643: END IF;
61638:
61639: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
61640:
61641: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
61642: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
61643: END IF;
61644:
61645: --
61646: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
61645: --
61646: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
61647: --
61648: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
61649: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
61650: ELSE
61651: ---------------------------------------------------------------------------------------------------
61652: -- 4262811a Switch Sign
61653: ---------------------------------------------------------------------------------------------------
61650: ELSE
61651: ---------------------------------------------------------------------------------------------------
61652: -- 4262811a Switch Sign
61653: ---------------------------------------------------------------------------------------------------
61654: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61656: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61658: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61651: ---------------------------------------------------------------------------------------------------
61652: -- 4262811a Switch Sign
61653: ---------------------------------------------------------------------------------------------------
61654: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61656: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61658: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61659: -- 5132302
61652: -- 4262811a Switch Sign
61653: ---------------------------------------------------------------------------------------------------
61654: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61656: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61658: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61659: -- 5132302
61660: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61653: ---------------------------------------------------------------------------------------------------
61654: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61656: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61658: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61659: -- 5132302
61660: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61661: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61654: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
61655: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61656: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61658: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61659: -- 5132302
61660: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61661: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61662:
61656: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61658: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61659: -- 5132302
61660: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61661: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61662:
61663: END IF;
61664:
61657: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
61658: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61659: -- 5132302
61660: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
61661: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
61662:
61663: END IF;
61664:
61665: -- 4955764
61662:
61663: END IF;
61664:
61665: -- 4955764
61666: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61667: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61668:
61669:
61670: XLA_AE_LINES_PKG.ValidateCurrentLine;
61666: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
61667: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61668:
61669:
61670: XLA_AE_LINES_PKG.ValidateCurrentLine;
61671: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61672:
61673: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
61674: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
61667: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
61668:
61669:
61670: XLA_AE_LINES_PKG.ValidateCurrentLine;
61671: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
61672:
61673: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
61674: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
61675: ,p_balance_type_code => l_balance_type_code);
61822: --
61823: -- bulk performance
61824: --
61825: l_balance_type_code VARCHAR2(1);
61826: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
61827: l_log_module VARCHAR2(240);
61828:
61829: --
61830: -- Upgrade strategy
61954: ') = 'NETTING')
61955: THEN
61956:
61957: --
61958: XLA_AE_LINES_PKG.SetNewLine;
61959:
61960: p_balance_type_code := l_balance_type_code;
61961: -- set the flag so later we will know whether the gain loss line needs to be created
61962:
61966:
61967: --
61968: -- bulk performance
61969: --
61970: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
61971: p_header_num => 0); -- 4262811
61972: --
61973: -- set accounting line options
61974: --
61971: p_header_num => 0); -- 4262811
61972: --
61973: -- set accounting line options
61974: --
61975: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
61976: p_natural_side_code => 'D'
61977: , p_gain_or_loss_flag => 'N'
61978: , p_gl_transfer_mode_code => 'S'
61979: , p_acct_entry_type_code => 'A'
61985: --
61986: --
61987: -- set accounting line type info
61988: --
61989: xla_ae_lines_pkg.SetAcctLineType
61990: (p_component_type => l_component_type
61991: ,p_event_type_code => l_event_type_code
61992: ,p_line_definition_owner_code => l_line_definition_owner_code
61993: ,p_line_definition_code => l_line_definition_code
61999: ,p_event_class_code => l_event_class_code);
62000: --
62001: -- set accounting class
62002: --
62003: xla_ae_lines_pkg.SetAcctClass(
62004: p_accounting_class_code => 'UNAPP'
62005: , p_ae_header_id => l_ae_header_id
62006: );
62007:
62007:
62008: --
62009: -- set rounding class
62010: --
62011: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
62012: 'RECEIVABLE';
62013:
62014: --
62015: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
62011: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
62012: 'RECEIVABLE';
62013:
62014: --
62015: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
62016: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
62017: --
62018: -- bulk performance
62019: --
62012: 'RECEIVABLE';
62013:
62014: --
62015: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
62016: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
62017: --
62018: -- bulk performance
62019: --
62020: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
62016: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
62017: --
62018: -- bulk performance
62019: --
62020: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
62021:
62022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
62023: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
62024:
62018: -- bulk performance
62019: --
62020: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
62021:
62022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
62023: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
62024:
62025: -- 4955764
62026: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62022: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
62023: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
62024:
62025: -- 4955764
62026: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62027: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
62028:
62029: -- 4458381 Public Sector Enh
62030:
62066: l_rec_acct_attrs.array_num_value(15) := p_source_73;
62067: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
62068: l_rec_acct_attrs.array_char_value(16) := p_source_65;
62069:
62070: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
62071: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
62072:
62073: ---------------------------------------------------------------------------------------------------------------
62074: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62067: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
62068: l_rec_acct_attrs.array_char_value(16) := p_source_65;
62069:
62070: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
62071: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
62072:
62073: ---------------------------------------------------------------------------------------------------------------
62074: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62075: ---------------------------------------------------------------------------------------------------------------
62070: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
62071: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
62072:
62073: ---------------------------------------------------------------------------------------------------------------
62074: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62075: ---------------------------------------------------------------------------------------------------------------
62076: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62077:
62078: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62072:
62073: ---------------------------------------------------------------------------------------------------------------
62074: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62075: ---------------------------------------------------------------------------------------------------------------
62076: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62077:
62078: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62079: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62080:
62074: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62075: ---------------------------------------------------------------------------------------------------------------
62076: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62077:
62078: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62079: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62080:
62081: IF xla_accounting_cache_pkg.GetValueChar
62082: (p_source_code => 'LEDGER_CATEGORY_CODE'
62075: ---------------------------------------------------------------------------------------------------------------
62076: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62077:
62078: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62079: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62080:
62081: IF xla_accounting_cache_pkg.GetValueChar
62082: (p_source_code => 'LEDGER_CATEGORY_CODE'
62083: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
62086: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
62087: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
62088: )
62089: THEN
62090: xla_ae_lines_pkg.BflowUpgEntry
62091: (p_business_method_code => l_bflow_method_code
62092: ,p_business_class_code => l_bflow_class_code
62093: ,p_balance_type => l_balance_type_code);
62094: ELSE
62126: , x_value_type_code => l_adr_value_type_code
62127: , p_side => 'NA'
62128: );
62129:
62130: xla_ae_lines_pkg.set_ccid(
62131: p_code_combination_id => l_ccid
62132: , p_value_type_code => l_adr_value_type_code
62133: , p_transaction_coa_id => l_adr_transaction_coa_id
62134: , p_accounting_coa_id => l_adr_accounting_coa_id
62162: xla_accounting_err_pkg.build_message
62163: (p_appli_s_name => 'XLA'
62164: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
62165: ,p_token_1 => 'LINE_NUMBER'
62166: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
62167: ,p_token_2 => 'LINE_TYPE_NAME'
62168: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
62169: l_component_type
62170: ,l_component_code
62198: --
62199: --
62200: ------------------------------------------------------------------------------------------------
62201: -- 4219869 Business Flow
62202: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
62203: -- Prior Entry. Currently, the following code is always generated.
62204: ------------------------------------------------------------------------------------------------
62205: XLA_AE_LINES_PKG.ValidateCurrentLine;
62206:
62201: -- 4219869 Business Flow
62202: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
62203: -- Prior Entry. Currently, the following code is always generated.
62204: ------------------------------------------------------------------------------------------------
62205: XLA_AE_LINES_PKG.ValidateCurrentLine;
62206:
62207: ------------------------------------------------------------------------------------
62208: -- 4219869 Business Flow
62209: -- Populated credit and debit amounts -- Need to generate this within IF
62207: ------------------------------------------------------------------------------------
62208: -- 4219869 Business Flow
62209: -- Populated credit and debit amounts -- Need to generate this within IF
62210: ------------------------------------------------------------------------------------
62211: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62212:
62213: ----------------------------------------------------------------------------------
62214: -- 4219869 Business Flow
62215: -- Update journal entry status -- Need to generate this within IF
62239: -- To allow MPA report to determine if it should generate report process
62240: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
62241: ------------------------------------------------------------------------------------------
62242:
62243: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
62244: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
62245: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
62246: -- call ADRs
62247: -- Bug 4922099
62240: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
62241: ------------------------------------------------------------------------------------------
62242:
62243: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
62244: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
62245: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
62246: -- call ADRs
62247: -- Bug 4922099
62248: --
62264: , x_value_type_code => l_adr_value_type_code
62265: , p_side => 'NA'
62266: );
62267:
62268: xla_ae_lines_pkg.set_ccid(
62269: p_code_combination_id => l_ccid
62270: , p_value_type_code => l_adr_value_type_code
62271: , p_transaction_coa_id => l_adr_transaction_coa_id
62272: , p_accounting_coa_id => l_adr_accounting_coa_id
62287:
62288: --
62289: -- Update the line information that should be overwritten
62290: --
62291: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62292: p_header_num => 1);
62293: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62294:
62295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62289: -- Update the line information that should be overwritten
62290: --
62291: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62292: p_header_num => 1);
62293: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62294:
62295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62296:
62297: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62291: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62292: p_header_num => 1);
62293: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62294:
62295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62296:
62297: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62298: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
62299: END IF;
62294:
62295: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62296:
62297: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62298: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
62299: END IF;
62300:
62301: --
62302: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
62301: --
62302: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
62303: --
62304: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
62305: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
62306: ELSE
62307: ---------------------------------------------------------------------------------------------------
62308: -- 4262811a Switch Sign
62309: ---------------------------------------------------------------------------------------------------
62306: ELSE
62307: ---------------------------------------------------------------------------------------------------
62308: -- 4262811a Switch Sign
62309: ---------------------------------------------------------------------------------------------------
62310: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62311: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62312: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62313: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62314: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62307: ---------------------------------------------------------------------------------------------------
62308: -- 4262811a Switch Sign
62309: ---------------------------------------------------------------------------------------------------
62310: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62311: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62312: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62313: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62314: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62315: -- 5132302
62308: -- 4262811a Switch Sign
62309: ---------------------------------------------------------------------------------------------------
62310: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62311: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62312: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62313: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62314: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62315: -- 5132302
62316: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62309: ---------------------------------------------------------------------------------------------------
62310: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62311: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62312: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62313: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62314: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62315: -- 5132302
62316: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62317: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62310: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62311: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62312: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62313: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62314: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62315: -- 5132302
62316: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62317: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62318:
62312: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62313: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62314: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62315: -- 5132302
62316: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62317: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62318:
62319: END IF;
62320:
62313: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62314: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62315: -- 5132302
62316: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62317: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62318:
62319: END IF;
62320:
62321: -- 4955764
62318:
62319: END IF;
62320:
62321: -- 4955764
62322: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62323: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62324:
62325:
62326: XLA_AE_LINES_PKG.ValidateCurrentLine;
62322: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62323: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62324:
62325:
62326: XLA_AE_LINES_PKG.ValidateCurrentLine;
62327: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62328:
62329: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
62330: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
62323: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62324:
62325:
62326: XLA_AE_LINES_PKG.ValidateCurrentLine;
62327: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62328:
62329: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
62330: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
62331: ,p_balance_type_code => l_balance_type_code);
62478: --
62479: -- bulk performance
62480: --
62481: l_balance_type_code VARCHAR2(1);
62482: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
62483: l_log_module VARCHAR2(240);
62484:
62485: --
62486: -- Upgrade strategy
62606: ') <> 'UNID'
62607: THEN
62608:
62609: --
62610: XLA_AE_LINES_PKG.SetNewLine;
62611:
62612: p_balance_type_code := l_balance_type_code;
62613: -- set the flag so later we will know whether the gain loss line needs to be created
62614:
62618:
62619: --
62620: -- bulk performance
62621: --
62622: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
62623: p_header_num => 0); -- 4262811
62624: --
62625: -- set accounting line options
62626: --
62623: p_header_num => 0); -- 4262811
62624: --
62625: -- set accounting line options
62626: --
62627: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
62628: p_natural_side_code => 'D'
62629: , p_gain_or_loss_flag => 'N'
62630: , p_gl_transfer_mode_code => 'S'
62631: , p_acct_entry_type_code => 'A'
62637: --
62638: --
62639: -- set accounting line type info
62640: --
62641: xla_ae_lines_pkg.SetAcctLineType
62642: (p_component_type => l_component_type
62643: ,p_event_type_code => l_event_type_code
62644: ,p_line_definition_owner_code => l_line_definition_owner_code
62645: ,p_line_definition_code => l_line_definition_code
62651: ,p_event_class_code => l_event_class_code);
62652: --
62653: -- set accounting class
62654: --
62655: xla_ae_lines_pkg.SetAcctClass(
62656: p_accounting_class_code => 'UNAPP'
62657: , p_ae_header_id => l_ae_header_id
62658: );
62659:
62659:
62660: --
62661: -- set rounding class
62662: --
62663: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
62664: 'RECEIVABLE';
62665:
62666: --
62667: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
62663: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
62664: 'RECEIVABLE';
62665:
62666: --
62667: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
62668: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
62669: --
62670: -- bulk performance
62671: --
62664: 'RECEIVABLE';
62665:
62666: --
62667: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
62668: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
62669: --
62670: -- bulk performance
62671: --
62672: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
62668: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
62669: --
62670: -- bulk performance
62671: --
62672: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
62673:
62674: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
62675: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
62676:
62670: -- bulk performance
62671: --
62672: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
62673:
62674: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
62675: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
62676:
62677: -- 4955764
62678: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62674: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
62675: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
62676:
62677: -- 4955764
62678: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62679: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
62680:
62681: -- 4458381 Public Sector Enh
62682:
62718: l_rec_acct_attrs.array_num_value(15) := p_source_73;
62719: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
62720: l_rec_acct_attrs.array_char_value(16) := p_source_65;
62721:
62722: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
62723: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
62724:
62725: ---------------------------------------------------------------------------------------------------------------
62726: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62719: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
62720: l_rec_acct_attrs.array_char_value(16) := p_source_65;
62721:
62722: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
62723: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
62724:
62725: ---------------------------------------------------------------------------------------------------------------
62726: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62727: ---------------------------------------------------------------------------------------------------------------
62722: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
62723: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
62724:
62725: ---------------------------------------------------------------------------------------------------------------
62726: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62727: ---------------------------------------------------------------------------------------------------------------
62728: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62729:
62730: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62724:
62725: ---------------------------------------------------------------------------------------------------------------
62726: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62727: ---------------------------------------------------------------------------------------------------------------
62728: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62729:
62730: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62731: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62732:
62726: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
62727: ---------------------------------------------------------------------------------------------------------------
62728: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62729:
62730: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62731: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62732:
62733: IF xla_accounting_cache_pkg.GetValueChar
62734: (p_source_code => 'LEDGER_CATEGORY_CODE'
62727: ---------------------------------------------------------------------------------------------------------------
62728: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
62729:
62730: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62731: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
62732:
62733: IF xla_accounting_cache_pkg.GetValueChar
62734: (p_source_code => 'LEDGER_CATEGORY_CODE'
62735: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
62738: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
62739: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
62740: )
62741: THEN
62742: xla_ae_lines_pkg.BflowUpgEntry
62743: (p_business_method_code => l_bflow_method_code
62744: ,p_business_class_code => l_bflow_class_code
62745: ,p_balance_type => l_balance_type_code);
62746: ELSE
62778: , x_value_type_code => l_adr_value_type_code
62779: , p_side => 'NA'
62780: );
62781:
62782: xla_ae_lines_pkg.set_ccid(
62783: p_code_combination_id => l_ccid
62784: , p_value_type_code => l_adr_value_type_code
62785: , p_transaction_coa_id => l_adr_transaction_coa_id
62786: , p_accounting_coa_id => l_adr_accounting_coa_id
62814: xla_accounting_err_pkg.build_message
62815: (p_appli_s_name => 'XLA'
62816: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
62817: ,p_token_1 => 'LINE_NUMBER'
62818: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
62819: ,p_token_2 => 'LINE_TYPE_NAME'
62820: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
62821: l_component_type
62822: ,l_component_code
62850: --
62851: --
62852: ------------------------------------------------------------------------------------------------
62853: -- 4219869 Business Flow
62854: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
62855: -- Prior Entry. Currently, the following code is always generated.
62856: ------------------------------------------------------------------------------------------------
62857: XLA_AE_LINES_PKG.ValidateCurrentLine;
62858:
62853: -- 4219869 Business Flow
62854: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
62855: -- Prior Entry. Currently, the following code is always generated.
62856: ------------------------------------------------------------------------------------------------
62857: XLA_AE_LINES_PKG.ValidateCurrentLine;
62858:
62859: ------------------------------------------------------------------------------------
62860: -- 4219869 Business Flow
62861: -- Populated credit and debit amounts -- Need to generate this within IF
62859: ------------------------------------------------------------------------------------
62860: -- 4219869 Business Flow
62861: -- Populated credit and debit amounts -- Need to generate this within IF
62862: ------------------------------------------------------------------------------------
62863: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62864:
62865: ----------------------------------------------------------------------------------
62866: -- 4219869 Business Flow
62867: -- Update journal entry status -- Need to generate this within IF
62891: -- To allow MPA report to determine if it should generate report process
62892: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
62893: ------------------------------------------------------------------------------------------
62894:
62895: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
62896: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
62897: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
62898: -- call ADRs
62899: -- Bug 4922099
62892: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
62893: ------------------------------------------------------------------------------------------
62894:
62895: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
62896: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
62897: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
62898: -- call ADRs
62899: -- Bug 4922099
62900: --
62916: , x_value_type_code => l_adr_value_type_code
62917: , p_side => 'NA'
62918: );
62919:
62920: xla_ae_lines_pkg.set_ccid(
62921: p_code_combination_id => l_ccid
62922: , p_value_type_code => l_adr_value_type_code
62923: , p_transaction_coa_id => l_adr_transaction_coa_id
62924: , p_accounting_coa_id => l_adr_accounting_coa_id
62939:
62940: --
62941: -- Update the line information that should be overwritten
62942: --
62943: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62944: p_header_num => 1);
62945: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62946:
62947: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62941: -- Update the line information that should be overwritten
62942: --
62943: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62944: p_header_num => 1);
62945: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62946:
62947: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62948:
62949: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62943: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
62944: p_header_num => 1);
62945: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
62946:
62947: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62948:
62949: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62950: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
62951: END IF;
62946:
62947: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
62948:
62949: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
62950: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
62951: END IF;
62952:
62953: --
62954: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
62953: --
62954: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
62955: --
62956: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
62957: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
62958: ELSE
62959: ---------------------------------------------------------------------------------------------------
62960: -- 4262811a Switch Sign
62961: ---------------------------------------------------------------------------------------------------
62958: ELSE
62959: ---------------------------------------------------------------------------------------------------
62960: -- 4262811a Switch Sign
62961: ---------------------------------------------------------------------------------------------------
62962: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62963: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62964: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62965: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62966: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62959: ---------------------------------------------------------------------------------------------------
62960: -- 4262811a Switch Sign
62961: ---------------------------------------------------------------------------------------------------
62962: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62963: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62964: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62965: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62966: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62967: -- 5132302
62960: -- 4262811a Switch Sign
62961: ---------------------------------------------------------------------------------------------------
62962: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62963: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62964: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62965: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62966: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62967: -- 5132302
62968: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62961: ---------------------------------------------------------------------------------------------------
62962: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62963: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62964: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62965: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62966: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62967: -- 5132302
62968: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62969: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62962: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
62963: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62964: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62965: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62966: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62967: -- 5132302
62968: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62969: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62970:
62964: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62965: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62966: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62967: -- 5132302
62968: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62969: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62970:
62971: END IF;
62972:
62965: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
62966: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62967: -- 5132302
62968: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
62969: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
62970:
62971: END IF;
62972:
62973: -- 4955764
62970:
62971: END IF;
62972:
62973: -- 4955764
62974: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62975: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62976:
62977:
62978: XLA_AE_LINES_PKG.ValidateCurrentLine;
62974: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
62975: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62976:
62977:
62978: XLA_AE_LINES_PKG.ValidateCurrentLine;
62979: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62980:
62981: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
62982: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
62975: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
62976:
62977:
62978: XLA_AE_LINES_PKG.ValidateCurrentLine;
62979: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
62980:
62981: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
62982: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
62983: ,p_balance_type_code => l_balance_type_code);
63130: --
63131: -- bulk performance
63132: --
63133: l_balance_type_code VARCHAR2(1);
63134: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
63135: l_log_module VARCHAR2(240);
63136:
63137: --
63138: -- Upgrade strategy
63232: ') = 'N')
63233: ) THEN
63234:
63235: --
63236: XLA_AE_LINES_PKG.SetNewLine;
63237:
63238: p_balance_type_code := l_balance_type_code;
63239: -- set the flag so later we will know whether the gain loss line needs to be created
63240:
63244:
63245: --
63246: -- bulk performance
63247: --
63248: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
63249: p_header_num => 0); -- 4262811
63250: --
63251: -- set accounting line options
63252: --
63249: p_header_num => 0); -- 4262811
63250: --
63251: -- set accounting line options
63252: --
63253: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
63254: p_natural_side_code => 'D'
63255: , p_gain_or_loss_flag => 'N'
63256: , p_gl_transfer_mode_code => 'S'
63257: , p_acct_entry_type_code => 'A'
63263: --
63264: --
63265: -- set accounting line type info
63266: --
63267: xla_ae_lines_pkg.SetAcctLineType
63268: (p_component_type => l_component_type
63269: ,p_event_type_code => l_event_type_code
63270: ,p_line_definition_owner_code => l_line_definition_owner_code
63271: ,p_line_definition_code => l_line_definition_code
63277: ,p_event_class_code => l_event_class_code);
63278: --
63279: -- set accounting class
63280: --
63281: xla_ae_lines_pkg.SetAcctClass(
63282: p_accounting_class_code => 'UNAPP'
63283: , p_ae_header_id => l_ae_header_id
63284: );
63285:
63285:
63286: --
63287: -- set rounding class
63288: --
63289: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
63290: 'RECEIVABLE';
63291:
63292: --
63293: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
63289: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
63290: 'RECEIVABLE';
63291:
63292: --
63293: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
63294: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
63295: --
63296: -- bulk performance
63297: --
63290: 'RECEIVABLE';
63291:
63292: --
63293: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
63294: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
63295: --
63296: -- bulk performance
63297: --
63298: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
63294: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
63295: --
63296: -- bulk performance
63297: --
63298: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
63299:
63300: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
63301: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
63302:
63296: -- bulk performance
63297: --
63298: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
63299:
63300: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
63301: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
63302:
63303: -- 4955764
63304: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
63300: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
63301: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
63302:
63303: -- 4955764
63304: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
63305: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
63306:
63307: -- 4458381 Public Sector Enh
63308:
63344: l_rec_acct_attrs.array_num_value(15) := p_source_76;
63345: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
63346: l_rec_acct_attrs.array_char_value(16) := p_source_65;
63347:
63348: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
63349: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
63350:
63351: ---------------------------------------------------------------------------------------------------------------
63352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63345: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
63346: l_rec_acct_attrs.array_char_value(16) := p_source_65;
63347:
63348: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
63349: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
63350:
63351: ---------------------------------------------------------------------------------------------------------------
63352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63353: ---------------------------------------------------------------------------------------------------------------
63348: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
63349: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
63350:
63351: ---------------------------------------------------------------------------------------------------------------
63352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63353: ---------------------------------------------------------------------------------------------------------------
63354: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
63355:
63356: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63350:
63351: ---------------------------------------------------------------------------------------------------------------
63352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63353: ---------------------------------------------------------------------------------------------------------------
63354: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
63355:
63356: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63357: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63358:
63352: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63353: ---------------------------------------------------------------------------------------------------------------
63354: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
63355:
63356: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63357: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63358:
63359: IF xla_accounting_cache_pkg.GetValueChar
63360: (p_source_code => 'LEDGER_CATEGORY_CODE'
63353: ---------------------------------------------------------------------------------------------------------------
63354: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
63355:
63356: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63357: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63358:
63359: IF xla_accounting_cache_pkg.GetValueChar
63360: (p_source_code => 'LEDGER_CATEGORY_CODE'
63361: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
63364: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
63365: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
63366: )
63367: THEN
63368: xla_ae_lines_pkg.BflowUpgEntry
63369: (p_business_method_code => l_bflow_method_code
63370: ,p_business_class_code => l_bflow_class_code
63371: ,p_balance_type => l_balance_type_code);
63372: ELSE
63404: , x_value_type_code => l_adr_value_type_code
63405: , p_side => 'NA'
63406: );
63407:
63408: xla_ae_lines_pkg.set_ccid(
63409: p_code_combination_id => l_ccid
63410: , p_value_type_code => l_adr_value_type_code
63411: , p_transaction_coa_id => l_adr_transaction_coa_id
63412: , p_accounting_coa_id => l_adr_accounting_coa_id
63440: xla_accounting_err_pkg.build_message
63441: (p_appli_s_name => 'XLA'
63442: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
63443: ,p_token_1 => 'LINE_NUMBER'
63444: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
63445: ,p_token_2 => 'LINE_TYPE_NAME'
63446: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
63447: l_component_type
63448: ,l_component_code
63476: --
63477: --
63478: ------------------------------------------------------------------------------------------------
63479: -- 4219869 Business Flow
63480: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
63481: -- Prior Entry. Currently, the following code is always generated.
63482: ------------------------------------------------------------------------------------------------
63483: XLA_AE_LINES_PKG.ValidateCurrentLine;
63484:
63479: -- 4219869 Business Flow
63480: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
63481: -- Prior Entry. Currently, the following code is always generated.
63482: ------------------------------------------------------------------------------------------------
63483: XLA_AE_LINES_PKG.ValidateCurrentLine;
63484:
63485: ------------------------------------------------------------------------------------
63486: -- 4219869 Business Flow
63487: -- Populated credit and debit amounts -- Need to generate this within IF
63485: ------------------------------------------------------------------------------------
63486: -- 4219869 Business Flow
63487: -- Populated credit and debit amounts -- Need to generate this within IF
63488: ------------------------------------------------------------------------------------
63489: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
63490:
63491: ----------------------------------------------------------------------------------
63492: -- 4219869 Business Flow
63493: -- Update journal entry status -- Need to generate this within IF
63517: -- To allow MPA report to determine if it should generate report process
63518: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
63519: ------------------------------------------------------------------------------------------
63520:
63521: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
63522: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
63523: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
63524: -- call ADRs
63525: -- Bug 4922099
63518: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
63519: ------------------------------------------------------------------------------------------
63520:
63521: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
63522: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
63523: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
63524: -- call ADRs
63525: -- Bug 4922099
63526: --
63542: , x_value_type_code => l_adr_value_type_code
63543: , p_side => 'NA'
63544: );
63545:
63546: xla_ae_lines_pkg.set_ccid(
63547: p_code_combination_id => l_ccid
63548: , p_value_type_code => l_adr_value_type_code
63549: , p_transaction_coa_id => l_adr_transaction_coa_id
63550: , p_accounting_coa_id => l_adr_accounting_coa_id
63565:
63566: --
63567: -- Update the line information that should be overwritten
63568: --
63569: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
63570: p_header_num => 1);
63571: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
63572:
63573: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
63567: -- Update the line information that should be overwritten
63568: --
63569: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
63570: p_header_num => 1);
63571: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
63572:
63573: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
63574:
63575: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
63569: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
63570: p_header_num => 1);
63571: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
63572:
63573: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
63574:
63575: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
63576: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
63577: END IF;
63572:
63573: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
63574:
63575: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
63576: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
63577: END IF;
63578:
63579: --
63580: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
63579: --
63580: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
63581: --
63582: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
63583: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
63584: ELSE
63585: ---------------------------------------------------------------------------------------------------
63586: -- 4262811a Switch Sign
63587: ---------------------------------------------------------------------------------------------------
63584: ELSE
63585: ---------------------------------------------------------------------------------------------------
63586: -- 4262811a Switch Sign
63587: ---------------------------------------------------------------------------------------------------
63588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
63589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63585: ---------------------------------------------------------------------------------------------------
63586: -- 4262811a Switch Sign
63587: ---------------------------------------------------------------------------------------------------
63588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
63589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63593: -- 5132302
63586: -- 4262811a Switch Sign
63587: ---------------------------------------------------------------------------------------------------
63588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
63589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63593: -- 5132302
63594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
63587: ---------------------------------------------------------------------------------------------------
63588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
63589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63593: -- 5132302
63594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
63595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63588: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
63589: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63593: -- 5132302
63594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
63595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63596:
63590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63593: -- 5132302
63594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
63595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63596:
63597: END IF;
63598:
63591: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
63592: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63593: -- 5132302
63594: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
63595: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
63596:
63597: END IF;
63598:
63599: -- 4955764
63596:
63597: END IF;
63598:
63599: -- 4955764
63600: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
63601: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
63602:
63603:
63604: XLA_AE_LINES_PKG.ValidateCurrentLine;
63600: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
63601: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
63602:
63603:
63604: XLA_AE_LINES_PKG.ValidateCurrentLine;
63605: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
63606:
63607: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
63608: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
63601: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
63602:
63603:
63604: XLA_AE_LINES_PKG.ValidateCurrentLine;
63605: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
63606:
63607: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
63608: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
63609: ,p_balance_type_code => l_balance_type_code);
63752: --
63753: -- bulk performance
63754: --
63755: l_balance_type_code VARCHAR2(1);
63756: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
63757: l_log_module VARCHAR2(240);
63758:
63759: --
63760: -- Upgrade strategy
63822: ') = 'N'
63823: THEN
63824:
63825: --
63826: XLA_AE_LINES_PKG.SetNewLine;
63827:
63828: p_balance_type_code := l_balance_type_code;
63829: -- set the flag so later we will know whether the gain loss line needs to be created
63830:
63834:
63835: --
63836: -- bulk performance
63837: --
63838: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
63839: p_header_num => 0); -- 4262811
63840: --
63841: -- set accounting line options
63842: --
63839: p_header_num => 0); -- 4262811
63840: --
63841: -- set accounting line options
63842: --
63843: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
63844: p_natural_side_code => 'C'
63845: , p_gain_or_loss_flag => 'N'
63846: , p_gl_transfer_mode_code => 'S'
63847: , p_acct_entry_type_code => 'A'
63853: --
63854: --
63855: -- set accounting line type info
63856: --
63857: xla_ae_lines_pkg.SetAcctLineType
63858: (p_component_type => l_component_type
63859: ,p_event_type_code => l_event_type_code
63860: ,p_line_definition_owner_code => l_line_definition_owner_code
63861: ,p_line_definition_code => l_line_definition_code
63867: ,p_event_class_code => l_event_class_code);
63868: --
63869: -- set accounting class
63870: --
63871: xla_ae_lines_pkg.SetAcctClass(
63872: p_accounting_class_code => 'UNEDISC'
63873: , p_ae_header_id => l_ae_header_id
63874: );
63875:
63875:
63876: --
63877: -- set rounding class
63878: --
63879: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
63880: 'RECEIVABLE';
63881:
63882: --
63883: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
63879: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
63880: 'RECEIVABLE';
63881:
63882: --
63883: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
63884: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
63885: --
63886: -- bulk performance
63887: --
63880: 'RECEIVABLE';
63881:
63882: --
63883: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
63884: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
63885: --
63886: -- bulk performance
63887: --
63888: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
63884: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
63885: --
63886: -- bulk performance
63887: --
63888: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
63889:
63890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
63891: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
63892:
63886: -- bulk performance
63887: --
63888: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
63889:
63890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
63891: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
63892:
63893: -- 4955764
63894: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
63890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
63891: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
63892:
63893: -- 4955764
63894: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
63895: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
63896:
63897: -- 4458381 Public Sector Enh
63898:
63934: l_rec_acct_attrs.array_num_value(15) := p_source_64;
63935: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
63936: l_rec_acct_attrs.array_char_value(16) := p_source_65;
63937:
63938: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
63939: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
63940:
63941: ---------------------------------------------------------------------------------------------------------------
63942: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63935: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
63936: l_rec_acct_attrs.array_char_value(16) := p_source_65;
63937:
63938: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
63939: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
63940:
63941: ---------------------------------------------------------------------------------------------------------------
63942: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63943: ---------------------------------------------------------------------------------------------------------------
63938: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
63939: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
63940:
63941: ---------------------------------------------------------------------------------------------------------------
63942: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63943: ---------------------------------------------------------------------------------------------------------------
63944: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
63945:
63946: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63940:
63941: ---------------------------------------------------------------------------------------------------------------
63942: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63943: ---------------------------------------------------------------------------------------------------------------
63944: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
63945:
63946: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63947: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63948:
63942: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
63943: ---------------------------------------------------------------------------------------------------------------
63944: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
63945:
63946: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63947: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63948:
63949: IF xla_accounting_cache_pkg.GetValueChar
63950: (p_source_code => 'LEDGER_CATEGORY_CODE'
63943: ---------------------------------------------------------------------------------------------------------------
63944: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
63945:
63946: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63947: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
63948:
63949: IF xla_accounting_cache_pkg.GetValueChar
63950: (p_source_code => 'LEDGER_CATEGORY_CODE'
63951: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
63954: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
63955: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
63956: )
63957: THEN
63958: xla_ae_lines_pkg.BflowUpgEntry
63959: (p_business_method_code => l_bflow_method_code
63960: ,p_business_class_code => l_bflow_class_code
63961: ,p_balance_type => l_balance_type_code);
63962: ELSE
63994: , x_value_type_code => l_adr_value_type_code
63995: , p_side => 'NA'
63996: );
63997:
63998: xla_ae_lines_pkg.set_ccid(
63999: p_code_combination_id => l_ccid
64000: , p_value_type_code => l_adr_value_type_code
64001: , p_transaction_coa_id => l_adr_transaction_coa_id
64002: , p_accounting_coa_id => l_adr_accounting_coa_id
64030: xla_accounting_err_pkg.build_message
64031: (p_appli_s_name => 'XLA'
64032: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
64033: ,p_token_1 => 'LINE_NUMBER'
64034: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
64035: ,p_token_2 => 'LINE_TYPE_NAME'
64036: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
64037: l_component_type
64038: ,l_component_code
64066: --
64067: --
64068: ------------------------------------------------------------------------------------------------
64069: -- 4219869 Business Flow
64070: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
64071: -- Prior Entry. Currently, the following code is always generated.
64072: ------------------------------------------------------------------------------------------------
64073: XLA_AE_LINES_PKG.ValidateCurrentLine;
64074:
64069: -- 4219869 Business Flow
64070: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
64071: -- Prior Entry. Currently, the following code is always generated.
64072: ------------------------------------------------------------------------------------------------
64073: XLA_AE_LINES_PKG.ValidateCurrentLine;
64074:
64075: ------------------------------------------------------------------------------------
64076: -- 4219869 Business Flow
64077: -- Populated credit and debit amounts -- Need to generate this within IF
64075: ------------------------------------------------------------------------------------
64076: -- 4219869 Business Flow
64077: -- Populated credit and debit amounts -- Need to generate this within IF
64078: ------------------------------------------------------------------------------------
64079: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
64080:
64081: ----------------------------------------------------------------------------------
64082: -- 4219869 Business Flow
64083: -- Update journal entry status -- Need to generate this within IF
64107: -- To allow MPA report to determine if it should generate report process
64108: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
64109: ------------------------------------------------------------------------------------------
64110:
64111: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
64112: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
64113: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
64114: -- call ADRs
64115: -- Bug 4922099
64108: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
64109: ------------------------------------------------------------------------------------------
64110:
64111: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
64112: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
64113: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
64114: -- call ADRs
64115: -- Bug 4922099
64116: --
64132: , x_value_type_code => l_adr_value_type_code
64133: , p_side => 'NA'
64134: );
64135:
64136: xla_ae_lines_pkg.set_ccid(
64137: p_code_combination_id => l_ccid
64138: , p_value_type_code => l_adr_value_type_code
64139: , p_transaction_coa_id => l_adr_transaction_coa_id
64140: , p_accounting_coa_id => l_adr_accounting_coa_id
64155:
64156: --
64157: -- Update the line information that should be overwritten
64158: --
64159: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
64160: p_header_num => 1);
64161: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
64162:
64163: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
64157: -- Update the line information that should be overwritten
64158: --
64159: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
64160: p_header_num => 1);
64161: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
64162:
64163: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
64164:
64165: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
64159: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
64160: p_header_num => 1);
64161: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
64162:
64163: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
64164:
64165: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
64166: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
64167: END IF;
64162:
64163: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
64164:
64165: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
64166: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
64167: END IF;
64168:
64169: --
64170: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
64169: --
64170: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
64171: --
64172: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
64173: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
64174: ELSE
64175: ---------------------------------------------------------------------------------------------------
64176: -- 4262811a Switch Sign
64177: ---------------------------------------------------------------------------------------------------
64174: ELSE
64175: ---------------------------------------------------------------------------------------------------
64176: -- 4262811a Switch Sign
64177: ---------------------------------------------------------------------------------------------------
64178: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64179: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64180: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64181: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64182: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64175: ---------------------------------------------------------------------------------------------------
64176: -- 4262811a Switch Sign
64177: ---------------------------------------------------------------------------------------------------
64178: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64179: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64180: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64181: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64182: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64183: -- 5132302
64176: -- 4262811a Switch Sign
64177: ---------------------------------------------------------------------------------------------------
64178: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64179: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64180: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64181: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64182: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64183: -- 5132302
64184: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64177: ---------------------------------------------------------------------------------------------------
64178: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64179: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64180: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64181: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64182: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64183: -- 5132302
64184: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64185: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64178: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64179: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64180: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64181: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64182: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64183: -- 5132302
64184: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64185: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64186:
64180: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64181: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64182: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64183: -- 5132302
64184: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64185: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64186:
64187: END IF;
64188:
64181: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64182: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64183: -- 5132302
64184: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64185: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64186:
64187: END IF;
64188:
64189: -- 4955764
64186:
64187: END IF;
64188:
64189: -- 4955764
64190: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
64191: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
64192:
64193:
64194: XLA_AE_LINES_PKG.ValidateCurrentLine;
64190: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
64191: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
64192:
64193:
64194: XLA_AE_LINES_PKG.ValidateCurrentLine;
64195: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
64196:
64197: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
64198: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
64191: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
64192:
64193:
64194: XLA_AE_LINES_PKG.ValidateCurrentLine;
64195: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
64196:
64197: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
64198: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
64199: ,p_balance_type_code => l_balance_type_code);
64342: --
64343: -- bulk performance
64344: --
64345: l_balance_type_code VARCHAR2(1);
64346: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
64347: l_log_module VARCHAR2(240);
64348:
64349: --
64350: -- Upgrade strategy
64412: ') = 'N'
64413: THEN
64414:
64415: --
64416: XLA_AE_LINES_PKG.SetNewLine;
64417:
64418: p_balance_type_code := l_balance_type_code;
64419: -- set the flag so later we will know whether the gain loss line needs to be created
64420:
64424:
64425: --
64426: -- bulk performance
64427: --
64428: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
64429: p_header_num => 0); -- 4262811
64430: --
64431: -- set accounting line options
64432: --
64429: p_header_num => 0); -- 4262811
64430: --
64431: -- set accounting line options
64432: --
64433: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
64434: p_natural_side_code => 'C'
64435: , p_gain_or_loss_flag => 'N'
64436: , p_gl_transfer_mode_code => 'S'
64437: , p_acct_entry_type_code => 'A'
64443: --
64444: --
64445: -- set accounting line type info
64446: --
64447: xla_ae_lines_pkg.SetAcctLineType
64448: (p_component_type => l_component_type
64449: ,p_event_type_code => l_event_type_code
64450: ,p_line_definition_owner_code => l_line_definition_owner_code
64451: ,p_line_definition_code => l_line_definition_code
64457: ,p_event_class_code => l_event_class_code);
64458: --
64459: -- set accounting class
64460: --
64461: xla_ae_lines_pkg.SetAcctClass(
64462: p_accounting_class_code => 'UNEDISC_NON_REC_TAX'
64463: , p_ae_header_id => l_ae_header_id
64464: );
64465:
64465:
64466: --
64467: -- set rounding class
64468: --
64469: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
64470: 'RECEIVABLE';
64471:
64472: --
64473: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
64469: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
64470: 'RECEIVABLE';
64471:
64472: --
64473: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
64474: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
64475: --
64476: -- bulk performance
64477: --
64470: 'RECEIVABLE';
64471:
64472: --
64473: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
64474: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
64475: --
64476: -- bulk performance
64477: --
64478: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
64474: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
64475: --
64476: -- bulk performance
64477: --
64478: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
64479:
64480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
64481: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
64482:
64476: -- bulk performance
64477: --
64478: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
64479:
64480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
64481: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
64482:
64483: -- 4955764
64484: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
64480: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
64481: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
64482:
64483: -- 4955764
64484: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
64485: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
64486:
64487: -- 4458381 Public Sector Enh
64488:
64524: l_rec_acct_attrs.array_num_value(15) := p_source_64;
64525: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
64526: l_rec_acct_attrs.array_char_value(16) := p_source_65;
64527:
64528: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
64529: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
64530:
64531: ---------------------------------------------------------------------------------------------------------------
64532: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
64525: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
64526: l_rec_acct_attrs.array_char_value(16) := p_source_65;
64527:
64528: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
64529: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
64530:
64531: ---------------------------------------------------------------------------------------------------------------
64532: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
64533: ---------------------------------------------------------------------------------------------------------------
64528: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
64529: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
64530:
64531: ---------------------------------------------------------------------------------------------------------------
64532: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
64533: ---------------------------------------------------------------------------------------------------------------
64534: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
64535:
64536: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
64530:
64531: ---------------------------------------------------------------------------------------------------------------
64532: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
64533: ---------------------------------------------------------------------------------------------------------------
64534: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
64535:
64536: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
64537: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
64538:
64532: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
64533: ---------------------------------------------------------------------------------------------------------------
64534: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
64535:
64536: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
64537: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
64538:
64539: IF xla_accounting_cache_pkg.GetValueChar
64540: (p_source_code => 'LEDGER_CATEGORY_CODE'
64533: ---------------------------------------------------------------------------------------------------------------
64534: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
64535:
64536: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
64537: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
64538:
64539: IF xla_accounting_cache_pkg.GetValueChar
64540: (p_source_code => 'LEDGER_CATEGORY_CODE'
64541: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
64544: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
64545: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
64546: )
64547: THEN
64548: xla_ae_lines_pkg.BflowUpgEntry
64549: (p_business_method_code => l_bflow_method_code
64550: ,p_business_class_code => l_bflow_class_code
64551: ,p_balance_type => l_balance_type_code);
64552: ELSE
64584: , x_value_type_code => l_adr_value_type_code
64585: , p_side => 'NA'
64586: );
64587:
64588: xla_ae_lines_pkg.set_ccid(
64589: p_code_combination_id => l_ccid
64590: , p_value_type_code => l_adr_value_type_code
64591: , p_transaction_coa_id => l_adr_transaction_coa_id
64592: , p_accounting_coa_id => l_adr_accounting_coa_id
64620: xla_accounting_err_pkg.build_message
64621: (p_appli_s_name => 'XLA'
64622: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
64623: ,p_token_1 => 'LINE_NUMBER'
64624: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
64625: ,p_token_2 => 'LINE_TYPE_NAME'
64626: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
64627: l_component_type
64628: ,l_component_code
64656: --
64657: --
64658: ------------------------------------------------------------------------------------------------
64659: -- 4219869 Business Flow
64660: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
64661: -- Prior Entry. Currently, the following code is always generated.
64662: ------------------------------------------------------------------------------------------------
64663: XLA_AE_LINES_PKG.ValidateCurrentLine;
64664:
64659: -- 4219869 Business Flow
64660: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
64661: -- Prior Entry. Currently, the following code is always generated.
64662: ------------------------------------------------------------------------------------------------
64663: XLA_AE_LINES_PKG.ValidateCurrentLine;
64664:
64665: ------------------------------------------------------------------------------------
64666: -- 4219869 Business Flow
64667: -- Populated credit and debit amounts -- Need to generate this within IF
64665: ------------------------------------------------------------------------------------
64666: -- 4219869 Business Flow
64667: -- Populated credit and debit amounts -- Need to generate this within IF
64668: ------------------------------------------------------------------------------------
64669: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
64670:
64671: ----------------------------------------------------------------------------------
64672: -- 4219869 Business Flow
64673: -- Update journal entry status -- Need to generate this within IF
64697: -- To allow MPA report to determine if it should generate report process
64698: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
64699: ------------------------------------------------------------------------------------------
64700:
64701: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
64702: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
64703: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
64704: -- call ADRs
64705: -- Bug 4922099
64698: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
64699: ------------------------------------------------------------------------------------------
64700:
64701: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
64702: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
64703: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
64704: -- call ADRs
64705: -- Bug 4922099
64706: --
64722: , x_value_type_code => l_adr_value_type_code
64723: , p_side => 'NA'
64724: );
64725:
64726: xla_ae_lines_pkg.set_ccid(
64727: p_code_combination_id => l_ccid
64728: , p_value_type_code => l_adr_value_type_code
64729: , p_transaction_coa_id => l_adr_transaction_coa_id
64730: , p_accounting_coa_id => l_adr_accounting_coa_id
64745:
64746: --
64747: -- Update the line information that should be overwritten
64748: --
64749: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
64750: p_header_num => 1);
64751: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
64752:
64753: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
64747: -- Update the line information that should be overwritten
64748: --
64749: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
64750: p_header_num => 1);
64751: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
64752:
64753: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
64754:
64755: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
64749: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
64750: p_header_num => 1);
64751: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
64752:
64753: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
64754:
64755: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
64756: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
64757: END IF;
64752:
64753: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
64754:
64755: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
64756: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
64757: END IF;
64758:
64759: --
64760: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
64759: --
64760: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
64761: --
64762: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
64763: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
64764: ELSE
64765: ---------------------------------------------------------------------------------------------------
64766: -- 4262811a Switch Sign
64767: ---------------------------------------------------------------------------------------------------
64764: ELSE
64765: ---------------------------------------------------------------------------------------------------
64766: -- 4262811a Switch Sign
64767: ---------------------------------------------------------------------------------------------------
64768: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64769: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64771: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64765: ---------------------------------------------------------------------------------------------------
64766: -- 4262811a Switch Sign
64767: ---------------------------------------------------------------------------------------------------
64768: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64769: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64771: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64773: -- 5132302
64766: -- 4262811a Switch Sign
64767: ---------------------------------------------------------------------------------------------------
64768: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64769: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64771: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64773: -- 5132302
64774: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64767: ---------------------------------------------------------------------------------------------------
64768: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64769: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64771: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64773: -- 5132302
64774: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64775: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64768: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
64769: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64771: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64773: -- 5132302
64774: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64775: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64776:
64770: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64771: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64773: -- 5132302
64774: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64775: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64776:
64777: END IF;
64778:
64771: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
64772: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64773: -- 5132302
64774: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
64775: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
64776:
64777: END IF;
64778:
64779: -- 4955764
64776:
64777: END IF;
64778:
64779: -- 4955764
64780: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
64781: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
64782:
64783:
64784: XLA_AE_LINES_PKG.ValidateCurrentLine;
64780: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
64781: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
64782:
64783:
64784: XLA_AE_LINES_PKG.ValidateCurrentLine;
64785: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
64786:
64787: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
64788: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
64781: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
64782:
64783:
64784: XLA_AE_LINES_PKG.ValidateCurrentLine;
64785: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
64786:
64787: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
64788: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
64789: ,p_balance_type_code => l_balance_type_code);
64932: --
64933: -- bulk performance
64934: --
64935: l_balance_type_code VARCHAR2(1);
64936: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
64937: l_log_module VARCHAR2(240);
64938:
64939: --
64940: -- Upgrade strategy
65002: ') = 'N'
65003: THEN
65004:
65005: --
65006: XLA_AE_LINES_PKG.SetNewLine;
65007:
65008: p_balance_type_code := l_balance_type_code;
65009: -- set the flag so later we will know whether the gain loss line needs to be created
65010:
65014:
65015: --
65016: -- bulk performance
65017: --
65018: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
65019: p_header_num => 0); -- 4262811
65020: --
65021: -- set accounting line options
65022: --
65019: p_header_num => 0); -- 4262811
65020: --
65021: -- set accounting line options
65022: --
65023: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
65024: p_natural_side_code => 'C'
65025: , p_gain_or_loss_flag => 'N'
65026: , p_gl_transfer_mode_code => 'S'
65027: , p_acct_entry_type_code => 'A'
65033: --
65034: --
65035: -- set accounting line type info
65036: --
65037: xla_ae_lines_pkg.SetAcctLineType
65038: (p_component_type => l_component_type
65039: ,p_event_type_code => l_event_type_code
65040: ,p_line_definition_owner_code => l_line_definition_owner_code
65041: ,p_line_definition_code => l_line_definition_code
65047: ,p_event_class_code => l_event_class_code);
65048: --
65049: -- set accounting class
65050: --
65051: xla_ae_lines_pkg.SetAcctClass(
65052: p_accounting_class_code => 'UNID'
65053: , p_ae_header_id => l_ae_header_id
65054: );
65055:
65055:
65056: --
65057: -- set rounding class
65058: --
65059: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
65060: 'RECEIVABLE';
65061:
65062: --
65063: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
65059: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
65060: 'RECEIVABLE';
65061:
65062: --
65063: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
65064: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
65065: --
65066: -- bulk performance
65067: --
65060: 'RECEIVABLE';
65061:
65062: --
65063: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
65064: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
65065: --
65066: -- bulk performance
65067: --
65068: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
65064: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
65065: --
65066: -- bulk performance
65067: --
65068: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
65069:
65070: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
65071: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
65072:
65066: -- bulk performance
65067: --
65068: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
65069:
65070: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
65071: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
65072:
65073: -- 4955764
65074: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
65070: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
65071: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
65072:
65073: -- 4955764
65074: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
65075: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
65076:
65077: -- 4458381 Public Sector Enh
65078:
65114: l_rec_acct_attrs.array_num_value(15) := p_source_64;
65115: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
65116: l_rec_acct_attrs.array_char_value(16) := p_source_65;
65117:
65118: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
65119: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
65120:
65121: ---------------------------------------------------------------------------------------------------------------
65122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65115: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
65116: l_rec_acct_attrs.array_char_value(16) := p_source_65;
65117:
65118: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
65119: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
65120:
65121: ---------------------------------------------------------------------------------------------------------------
65122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65123: ---------------------------------------------------------------------------------------------------------------
65118: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
65119: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
65120:
65121: ---------------------------------------------------------------------------------------------------------------
65122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65123: ---------------------------------------------------------------------------------------------------------------
65124: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
65125:
65126: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65120:
65121: ---------------------------------------------------------------------------------------------------------------
65122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65123: ---------------------------------------------------------------------------------------------------------------
65124: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
65125:
65126: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65127: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65128:
65122: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65123: ---------------------------------------------------------------------------------------------------------------
65124: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
65125:
65126: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65127: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65128:
65129: IF xla_accounting_cache_pkg.GetValueChar
65130: (p_source_code => 'LEDGER_CATEGORY_CODE'
65123: ---------------------------------------------------------------------------------------------------------------
65124: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
65125:
65126: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65127: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65128:
65129: IF xla_accounting_cache_pkg.GetValueChar
65130: (p_source_code => 'LEDGER_CATEGORY_CODE'
65131: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
65134: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
65135: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
65136: )
65137: THEN
65138: xla_ae_lines_pkg.BflowUpgEntry
65139: (p_business_method_code => l_bflow_method_code
65140: ,p_business_class_code => l_bflow_class_code
65141: ,p_balance_type => l_balance_type_code);
65142: ELSE
65174: , x_value_type_code => l_adr_value_type_code
65175: , p_side => 'NA'
65176: );
65177:
65178: xla_ae_lines_pkg.set_ccid(
65179: p_code_combination_id => l_ccid
65180: , p_value_type_code => l_adr_value_type_code
65181: , p_transaction_coa_id => l_adr_transaction_coa_id
65182: , p_accounting_coa_id => l_adr_accounting_coa_id
65210: xla_accounting_err_pkg.build_message
65211: (p_appli_s_name => 'XLA'
65212: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
65213: ,p_token_1 => 'LINE_NUMBER'
65214: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
65215: ,p_token_2 => 'LINE_TYPE_NAME'
65216: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
65217: l_component_type
65218: ,l_component_code
65246: --
65247: --
65248: ------------------------------------------------------------------------------------------------
65249: -- 4219869 Business Flow
65250: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
65251: -- Prior Entry. Currently, the following code is always generated.
65252: ------------------------------------------------------------------------------------------------
65253: XLA_AE_LINES_PKG.ValidateCurrentLine;
65254:
65249: -- 4219869 Business Flow
65250: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
65251: -- Prior Entry. Currently, the following code is always generated.
65252: ------------------------------------------------------------------------------------------------
65253: XLA_AE_LINES_PKG.ValidateCurrentLine;
65254:
65255: ------------------------------------------------------------------------------------
65256: -- 4219869 Business Flow
65257: -- Populated credit and debit amounts -- Need to generate this within IF
65255: ------------------------------------------------------------------------------------
65256: -- 4219869 Business Flow
65257: -- Populated credit and debit amounts -- Need to generate this within IF
65258: ------------------------------------------------------------------------------------
65259: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
65260:
65261: ----------------------------------------------------------------------------------
65262: -- 4219869 Business Flow
65263: -- Update journal entry status -- Need to generate this within IF
65287: -- To allow MPA report to determine if it should generate report process
65288: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
65289: ------------------------------------------------------------------------------------------
65290:
65291: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
65292: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
65293: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
65294: -- call ADRs
65295: -- Bug 4922099
65288: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
65289: ------------------------------------------------------------------------------------------
65290:
65291: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
65292: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
65293: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
65294: -- call ADRs
65295: -- Bug 4922099
65296: --
65312: , x_value_type_code => l_adr_value_type_code
65313: , p_side => 'NA'
65314: );
65315:
65316: xla_ae_lines_pkg.set_ccid(
65317: p_code_combination_id => l_ccid
65318: , p_value_type_code => l_adr_value_type_code
65319: , p_transaction_coa_id => l_adr_transaction_coa_id
65320: , p_accounting_coa_id => l_adr_accounting_coa_id
65335:
65336: --
65337: -- Update the line information that should be overwritten
65338: --
65339: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
65340: p_header_num => 1);
65341: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
65342:
65343: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
65337: -- Update the line information that should be overwritten
65338: --
65339: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
65340: p_header_num => 1);
65341: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
65342:
65343: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
65344:
65345: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
65339: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
65340: p_header_num => 1);
65341: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
65342:
65343: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
65344:
65345: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
65346: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
65347: END IF;
65342:
65343: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
65344:
65345: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
65346: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
65347: END IF;
65348:
65349: --
65350: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
65349: --
65350: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
65351: --
65352: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
65353: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
65354: ELSE
65355: ---------------------------------------------------------------------------------------------------
65356: -- 4262811a Switch Sign
65357: ---------------------------------------------------------------------------------------------------
65354: ELSE
65355: ---------------------------------------------------------------------------------------------------
65356: -- 4262811a Switch Sign
65357: ---------------------------------------------------------------------------------------------------
65358: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65359: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65360: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65361: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65362: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65355: ---------------------------------------------------------------------------------------------------
65356: -- 4262811a Switch Sign
65357: ---------------------------------------------------------------------------------------------------
65358: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65359: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65360: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65361: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65362: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65363: -- 5132302
65356: -- 4262811a Switch Sign
65357: ---------------------------------------------------------------------------------------------------
65358: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65359: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65360: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65361: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65362: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65363: -- 5132302
65364: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65357: ---------------------------------------------------------------------------------------------------
65358: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65359: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65360: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65361: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65362: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65363: -- 5132302
65364: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65365: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65358: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65359: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65360: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65361: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65362: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65363: -- 5132302
65364: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65365: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65366:
65360: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65361: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65362: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65363: -- 5132302
65364: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65365: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65366:
65367: END IF;
65368:
65361: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65362: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65363: -- 5132302
65364: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65365: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65366:
65367: END IF;
65368:
65369: -- 4955764
65366:
65367: END IF;
65368:
65369: -- 4955764
65370: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
65371: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
65372:
65373:
65374: XLA_AE_LINES_PKG.ValidateCurrentLine;
65370: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
65371: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
65372:
65373:
65374: XLA_AE_LINES_PKG.ValidateCurrentLine;
65375: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
65376:
65377: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
65378: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
65371: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
65372:
65373:
65374: XLA_AE_LINES_PKG.ValidateCurrentLine;
65375: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
65376:
65377: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
65378: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
65379: ,p_balance_type_code => l_balance_type_code);
65530: --
65531: -- bulk performance
65532: --
65533: l_balance_type_code VARCHAR2(1);
65534: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
65535: l_log_module VARCHAR2(240);
65536:
65537: --
65538: -- Upgrade strategy
65632: ') = 'N')
65633: ) THEN
65634:
65635: --
65636: XLA_AE_LINES_PKG.SetNewLine;
65637:
65638: p_balance_type_code := l_balance_type_code;
65639: -- set the flag so later we will know whether the gain loss line needs to be created
65640:
65644:
65645: --
65646: -- bulk performance
65647: --
65648: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
65649: p_header_num => 0); -- 4262811
65650: --
65651: -- set accounting line options
65652: --
65649: p_header_num => 0); -- 4262811
65650: --
65651: -- set accounting line options
65652: --
65653: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
65654: p_natural_side_code => 'D'
65655: , p_gain_or_loss_flag => 'N'
65656: , p_gl_transfer_mode_code => 'S'
65657: , p_acct_entry_type_code => 'A'
65663: --
65664: --
65665: -- set accounting line type info
65666: --
65667: xla_ae_lines_pkg.SetAcctLineType
65668: (p_component_type => l_component_type
65669: ,p_event_type_code => l_event_type_code
65670: ,p_line_definition_owner_code => l_line_definition_owner_code
65671: ,p_line_definition_code => l_line_definition_code
65677: ,p_event_class_code => l_event_class_code);
65678: --
65679: -- set accounting class
65680: --
65681: xla_ae_lines_pkg.SetAcctClass(
65682: p_accounting_class_code => 'UNID'
65683: , p_ae_header_id => l_ae_header_id
65684: );
65685:
65685:
65686: --
65687: -- set rounding class
65688: --
65689: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
65690: 'RECEIVABLE';
65691:
65692: --
65693: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
65689: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
65690: 'RECEIVABLE';
65691:
65692: --
65693: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
65694: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
65695: --
65696: -- bulk performance
65697: --
65690: 'RECEIVABLE';
65691:
65692: --
65693: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
65694: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
65695: --
65696: -- bulk performance
65697: --
65698: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
65694: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
65695: --
65696: -- bulk performance
65697: --
65698: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
65699:
65700: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
65701: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
65702:
65696: -- bulk performance
65697: --
65698: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
65699:
65700: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
65701: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
65702:
65703: -- 4955764
65704: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
65700: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
65701: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
65702:
65703: -- 4955764
65704: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
65705: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
65706:
65707: -- 4458381 Public Sector Enh
65708:
65744: l_rec_acct_attrs.array_num_value(15) := p_source_64;
65745: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
65746: l_rec_acct_attrs.array_char_value(16) := p_source_65;
65747:
65748: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
65749: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
65750:
65751: ---------------------------------------------------------------------------------------------------------------
65752: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65745: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
65746: l_rec_acct_attrs.array_char_value(16) := p_source_65;
65747:
65748: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
65749: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
65750:
65751: ---------------------------------------------------------------------------------------------------------------
65752: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65753: ---------------------------------------------------------------------------------------------------------------
65748: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
65749: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
65750:
65751: ---------------------------------------------------------------------------------------------------------------
65752: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65753: ---------------------------------------------------------------------------------------------------------------
65754: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
65755:
65756: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65750:
65751: ---------------------------------------------------------------------------------------------------------------
65752: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65753: ---------------------------------------------------------------------------------------------------------------
65754: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
65755:
65756: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65757: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65758:
65752: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
65753: ---------------------------------------------------------------------------------------------------------------
65754: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
65755:
65756: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65757: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65758:
65759: IF xla_accounting_cache_pkg.GetValueChar
65760: (p_source_code => 'LEDGER_CATEGORY_CODE'
65753: ---------------------------------------------------------------------------------------------------------------
65754: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
65755:
65756: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65757: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
65758:
65759: IF xla_accounting_cache_pkg.GetValueChar
65760: (p_source_code => 'LEDGER_CATEGORY_CODE'
65761: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
65764: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
65765: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
65766: )
65767: THEN
65768: xla_ae_lines_pkg.BflowUpgEntry
65769: (p_business_method_code => l_bflow_method_code
65770: ,p_business_class_code => l_bflow_class_code
65771: ,p_balance_type => l_balance_type_code);
65772: ELSE
65804: , x_value_type_code => l_adr_value_type_code
65805: , p_side => 'NA'
65806: );
65807:
65808: xla_ae_lines_pkg.set_ccid(
65809: p_code_combination_id => l_ccid
65810: , p_value_type_code => l_adr_value_type_code
65811: , p_transaction_coa_id => l_adr_transaction_coa_id
65812: , p_accounting_coa_id => l_adr_accounting_coa_id
65840: xla_accounting_err_pkg.build_message
65841: (p_appli_s_name => 'XLA'
65842: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
65843: ,p_token_1 => 'LINE_NUMBER'
65844: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
65845: ,p_token_2 => 'LINE_TYPE_NAME'
65846: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
65847: l_component_type
65848: ,l_component_code
65876: --
65877: --
65878: ------------------------------------------------------------------------------------------------
65879: -- 4219869 Business Flow
65880: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
65881: -- Prior Entry. Currently, the following code is always generated.
65882: ------------------------------------------------------------------------------------------------
65883: XLA_AE_LINES_PKG.ValidateCurrentLine;
65884:
65879: -- 4219869 Business Flow
65880: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
65881: -- Prior Entry. Currently, the following code is always generated.
65882: ------------------------------------------------------------------------------------------------
65883: XLA_AE_LINES_PKG.ValidateCurrentLine;
65884:
65885: ------------------------------------------------------------------------------------
65886: -- 4219869 Business Flow
65887: -- Populated credit and debit amounts -- Need to generate this within IF
65885: ------------------------------------------------------------------------------------
65886: -- 4219869 Business Flow
65887: -- Populated credit and debit amounts -- Need to generate this within IF
65888: ------------------------------------------------------------------------------------
65889: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
65890:
65891: ----------------------------------------------------------------------------------
65892: -- 4219869 Business Flow
65893: -- Update journal entry status -- Need to generate this within IF
65917: -- To allow MPA report to determine if it should generate report process
65918: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
65919: ------------------------------------------------------------------------------------------
65920:
65921: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
65922: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
65923: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
65924: -- call ADRs
65925: -- Bug 4922099
65918: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
65919: ------------------------------------------------------------------------------------------
65920:
65921: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
65922: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
65923: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
65924: -- call ADRs
65925: -- Bug 4922099
65926: --
65942: , x_value_type_code => l_adr_value_type_code
65943: , p_side => 'NA'
65944: );
65945:
65946: xla_ae_lines_pkg.set_ccid(
65947: p_code_combination_id => l_ccid
65948: , p_value_type_code => l_adr_value_type_code
65949: , p_transaction_coa_id => l_adr_transaction_coa_id
65950: , p_accounting_coa_id => l_adr_accounting_coa_id
65965:
65966: --
65967: -- Update the line information that should be overwritten
65968: --
65969: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
65970: p_header_num => 1);
65971: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
65972:
65973: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
65967: -- Update the line information that should be overwritten
65968: --
65969: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
65970: p_header_num => 1);
65971: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
65972:
65973: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
65974:
65975: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
65969: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
65970: p_header_num => 1);
65971: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
65972:
65973: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
65974:
65975: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
65976: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
65977: END IF;
65972:
65973: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
65974:
65975: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
65976: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
65977: END IF;
65978:
65979: --
65980: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
65979: --
65980: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
65981: --
65982: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
65983: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
65984: ELSE
65985: ---------------------------------------------------------------------------------------------------
65986: -- 4262811a Switch Sign
65987: ---------------------------------------------------------------------------------------------------
65984: ELSE
65985: ---------------------------------------------------------------------------------------------------
65986: -- 4262811a Switch Sign
65987: ---------------------------------------------------------------------------------------------------
65988: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65989: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65990: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65991: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65992: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65985: ---------------------------------------------------------------------------------------------------
65986: -- 4262811a Switch Sign
65987: ---------------------------------------------------------------------------------------------------
65988: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65989: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65990: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65991: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65992: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65993: -- 5132302
65986: -- 4262811a Switch Sign
65987: ---------------------------------------------------------------------------------------------------
65988: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65989: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65990: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65991: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65992: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65993: -- 5132302
65994: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65987: ---------------------------------------------------------------------------------------------------
65988: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65989: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65990: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65991: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65992: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65993: -- 5132302
65994: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65995: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65988: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
65989: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65990: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65991: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65992: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65993: -- 5132302
65994: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65995: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65996:
65990: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65991: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65992: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65993: -- 5132302
65994: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65995: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65996:
65997: END IF;
65998:
65991: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
65992: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65993: -- 5132302
65994: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
65995: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
65996:
65997: END IF;
65998:
65999: -- 4955764
65996:
65997: END IF;
65998:
65999: -- 4955764
66000: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
66001: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
66002:
66003:
66004: XLA_AE_LINES_PKG.ValidateCurrentLine;
66000: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
66001: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
66002:
66003:
66004: XLA_AE_LINES_PKG.ValidateCurrentLine;
66005: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
66006:
66007: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
66008: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
66001: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
66002:
66003:
66004: XLA_AE_LINES_PKG.ValidateCurrentLine;
66005: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
66006:
66007: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
66008: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
66009: ,p_balance_type_code => l_balance_type_code);
66154: --
66155: -- bulk performance
66156: --
66157: l_balance_type_code VARCHAR2(1);
66158: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
66159: l_log_module VARCHAR2(240);
66160:
66161: --
66162: -- Upgrade strategy
66226: ') = 'N'
66227: THEN
66228:
66229: --
66230: XLA_AE_LINES_PKG.SetNewLine;
66231:
66232: p_balance_type_code := l_balance_type_code;
66233: -- set the flag so later we will know whether the gain loss line needs to be created
66234:
66238:
66239: --
66240: -- bulk performance
66241: --
66242: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
66243: p_header_num => 0); -- 4262811
66244: --
66245: -- set accounting line options
66246: --
66243: p_header_num => 0); -- 4262811
66244: --
66245: -- set accounting line options
66246: --
66247: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
66248: p_natural_side_code => 'C'
66249: , p_gain_or_loss_flag => 'N'
66250: , p_gl_transfer_mode_code => 'S'
66251: , p_acct_entry_type_code => 'A'
66257: --
66258: --
66259: -- set accounting line type info
66260: --
66261: xla_ae_lines_pkg.SetAcctLineType
66262: (p_component_type => l_component_type
66263: ,p_event_type_code => l_event_type_code
66264: ,p_line_definition_owner_code => l_line_definition_owner_code
66265: ,p_line_definition_code => l_line_definition_code
66271: ,p_event_class_code => l_event_class_code);
66272: --
66273: -- set accounting class
66274: --
66275: xla_ae_lines_pkg.SetAcctClass(
66276: p_accounting_class_code => 'WRITE_OFF'
66277: , p_ae_header_id => l_ae_header_id
66278: );
66279:
66279:
66280: --
66281: -- set rounding class
66282: --
66283: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
66284: 'RECEIVABLE';
66285:
66286: --
66287: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
66283: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
66284: 'RECEIVABLE';
66285:
66286: --
66287: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
66288: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
66289: --
66290: -- bulk performance
66291: --
66284: 'RECEIVABLE';
66285:
66286: --
66287: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
66288: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
66289: --
66290: -- bulk performance
66291: --
66292: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
66288: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
66289: --
66290: -- bulk performance
66291: --
66292: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
66293:
66294: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
66295: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
66296:
66290: -- bulk performance
66291: --
66292: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
66293:
66294: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
66295: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
66296:
66297: -- 4955764
66298: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
66294: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
66295: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
66296:
66297: -- 4955764
66298: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
66299: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
66300:
66301: -- 4458381 Public Sector Enh
66302:
66338: l_rec_acct_attrs.array_num_value(15) := p_source_64;
66339: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
66340: l_rec_acct_attrs.array_char_value(16) := p_source_65;
66341:
66342: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
66343: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
66344:
66345: ---------------------------------------------------------------------------------------------------------------
66346: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
66339: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
66340: l_rec_acct_attrs.array_char_value(16) := p_source_65;
66341:
66342: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
66343: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
66344:
66345: ---------------------------------------------------------------------------------------------------------------
66346: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
66347: ---------------------------------------------------------------------------------------------------------------
66342: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
66343: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
66344:
66345: ---------------------------------------------------------------------------------------------------------------
66346: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
66347: ---------------------------------------------------------------------------------------------------------------
66348: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
66349:
66350: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
66344:
66345: ---------------------------------------------------------------------------------------------------------------
66346: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
66347: ---------------------------------------------------------------------------------------------------------------
66348: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
66349:
66350: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
66351: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
66352:
66346: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
66347: ---------------------------------------------------------------------------------------------------------------
66348: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
66349:
66350: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
66351: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
66352:
66353: IF xla_accounting_cache_pkg.GetValueChar
66354: (p_source_code => 'LEDGER_CATEGORY_CODE'
66347: ---------------------------------------------------------------------------------------------------------------
66348: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
66349:
66350: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
66351: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
66352:
66353: IF xla_accounting_cache_pkg.GetValueChar
66354: (p_source_code => 'LEDGER_CATEGORY_CODE'
66355: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
66358: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
66359: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
66360: )
66361: THEN
66362: xla_ae_lines_pkg.BflowUpgEntry
66363: (p_business_method_code => l_bflow_method_code
66364: ,p_business_class_code => l_bflow_class_code
66365: ,p_balance_type => l_balance_type_code);
66366: ELSE
66398: , x_value_type_code => l_adr_value_type_code
66399: , p_side => 'NA'
66400: );
66401:
66402: xla_ae_lines_pkg.set_ccid(
66403: p_code_combination_id => l_ccid
66404: , p_value_type_code => l_adr_value_type_code
66405: , p_transaction_coa_id => l_adr_transaction_coa_id
66406: , p_accounting_coa_id => l_adr_accounting_coa_id
66434: xla_accounting_err_pkg.build_message
66435: (p_appli_s_name => 'XLA'
66436: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
66437: ,p_token_1 => 'LINE_NUMBER'
66438: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
66439: ,p_token_2 => 'LINE_TYPE_NAME'
66440: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
66441: l_component_type
66442: ,l_component_code
66470: --
66471: --
66472: ------------------------------------------------------------------------------------------------
66473: -- 4219869 Business Flow
66474: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
66475: -- Prior Entry. Currently, the following code is always generated.
66476: ------------------------------------------------------------------------------------------------
66477: XLA_AE_LINES_PKG.ValidateCurrentLine;
66478:
66473: -- 4219869 Business Flow
66474: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
66475: -- Prior Entry. Currently, the following code is always generated.
66476: ------------------------------------------------------------------------------------------------
66477: XLA_AE_LINES_PKG.ValidateCurrentLine;
66478:
66479: ------------------------------------------------------------------------------------
66480: -- 4219869 Business Flow
66481: -- Populated credit and debit amounts -- Need to generate this within IF
66479: ------------------------------------------------------------------------------------
66480: -- 4219869 Business Flow
66481: -- Populated credit and debit amounts -- Need to generate this within IF
66482: ------------------------------------------------------------------------------------
66483: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
66484:
66485: ----------------------------------------------------------------------------------
66486: -- 4219869 Business Flow
66487: -- Update journal entry status -- Need to generate this within IF
66511: -- To allow MPA report to determine if it should generate report process
66512: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
66513: ------------------------------------------------------------------------------------------
66514:
66515: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
66516: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
66517: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
66518: -- call ADRs
66519: -- Bug 4922099
66512: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
66513: ------------------------------------------------------------------------------------------
66514:
66515: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
66516: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
66517: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
66518: -- call ADRs
66519: -- Bug 4922099
66520: --
66536: , x_value_type_code => l_adr_value_type_code
66537: , p_side => 'NA'
66538: );
66539:
66540: xla_ae_lines_pkg.set_ccid(
66541: p_code_combination_id => l_ccid
66542: , p_value_type_code => l_adr_value_type_code
66543: , p_transaction_coa_id => l_adr_transaction_coa_id
66544: , p_accounting_coa_id => l_adr_accounting_coa_id
66559:
66560: --
66561: -- Update the line information that should be overwritten
66562: --
66563: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
66564: p_header_num => 1);
66565: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
66566:
66567: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
66561: -- Update the line information that should be overwritten
66562: --
66563: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
66564: p_header_num => 1);
66565: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
66566:
66567: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
66568:
66569: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
66563: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
66564: p_header_num => 1);
66565: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
66566:
66567: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
66568:
66569: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
66570: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
66571: END IF;
66566:
66567: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
66568:
66569: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
66570: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
66571: END IF;
66572:
66573: --
66574: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
66573: --
66574: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
66575: --
66576: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
66577: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
66578: ELSE
66579: ---------------------------------------------------------------------------------------------------
66580: -- 4262811a Switch Sign
66581: ---------------------------------------------------------------------------------------------------
66578: ELSE
66579: ---------------------------------------------------------------------------------------------------
66580: -- 4262811a Switch Sign
66581: ---------------------------------------------------------------------------------------------------
66582: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
66583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66584: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66586: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66579: ---------------------------------------------------------------------------------------------------
66580: -- 4262811a Switch Sign
66581: ---------------------------------------------------------------------------------------------------
66582: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
66583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66584: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66586: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66587: -- 5132302
66580: -- 4262811a Switch Sign
66581: ---------------------------------------------------------------------------------------------------
66582: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
66583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66584: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66586: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66587: -- 5132302
66588: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
66581: ---------------------------------------------------------------------------------------------------
66582: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
66583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66584: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66586: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66587: -- 5132302
66588: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
66589: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66582: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
66583: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66584: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66586: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66587: -- 5132302
66588: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
66589: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66590:
66584: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66586: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66587: -- 5132302
66588: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
66589: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66590:
66591: END IF;
66592:
66585: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
66586: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66587: -- 5132302
66588: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
66589: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
66590:
66591: END IF;
66592:
66593: -- 4955764
66590:
66591: END IF;
66592:
66593: -- 4955764
66594: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
66595: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
66596:
66597:
66598: XLA_AE_LINES_PKG.ValidateCurrentLine;
66594: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
66595: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
66596:
66597:
66598: XLA_AE_LINES_PKG.ValidateCurrentLine;
66599: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
66600:
66601: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
66602: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
66595: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
66596:
66597:
66598: XLA_AE_LINES_PKG.ValidateCurrentLine;
66599: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
66600:
66601: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
66602: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
66603: ,p_balance_type_code => l_balance_type_code);
67049: l_first_event_id NUMBER;
67050: l_last_event_id NUMBER;
67051:
67052: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
67053: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
67054: --
67055: --
67056: l_result BOOLEAN := TRUE;
67057: l_rows NUMBER := 1000;
67318: EXIT WHEN l_array_entity_id.COUNT = 0;
67319:
67320: -- initialize arrays
67321: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
67322: XLA_AE_LINES_PKG.g_rec_lines := NULL;
67323:
67324: --
67325: -- Bug 4458708
67326: --
67323:
67324: --
67325: -- Bug 4458708
67326: --
67327: XLA_AE_LINES_PKG.g_LineNumber := 0;
67328:
67329:
67330: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
67331: g_last_hdr_idx := l_array_event_id.LAST;
67466: --
67467: -- following sets the accounting attributes needed to reverse
67468: -- accounting for a distributeion
67469: --
67470: xla_ae_lines_pkg.SetTrxReversalAttrs
67471: (p_event_id => l_event_id
67472: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
67473: ,p_trx_reversal_source => l_trx_reversal_source);
67474:
67498: --
67499: -- insert dummy rows into lines gt table that were created due to
67500: -- transaction reversals
67501: --
67502: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
67503: l_result := XLA_AE_LINES_PKG.InsertLines;
67504: END IF;
67505:
67506: --
67499: -- insert dummy rows into lines gt table that were created due to
67500: -- transaction reversals
67501: --
67502: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
67503: l_result := XLA_AE_LINES_PKG.InsertLines;
67504: END IF;
67505:
67506: --
67507: -- reset the temp_line_num for each set of events fetched from header
67507: -- reset the temp_line_num for each set of events fetched from header
67508: -- cursor rather than doing it for each new event in line cursor
67509: -- Bug 3939231
67510: --
67511: xla_ae_lines_pkg.g_temp_line_num := 0;
67512:
67513:
67514:
67515: --
67575: END IF;
67576: --
67577: EXIT WHEN l_array_entity_id.count = 0;
67578:
67579: XLA_AE_LINES_PKG.g_rec_lines := null;
67580:
67581: --
67582: -- Bug 4458708
67583: --
67580:
67581: --
67582: -- Bug 4458708
67583: --
67584: XLA_AE_LINES_PKG.g_LineNumber := 0;
67585: --
67586: --
67587:
67588: FOR Idx IN 1..l_array_event_id.count LOOP
67652:
67653:
67654:
67655: --
67656: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
67657:
67658: l_acct_reversal_source := SUBSTR(NULL, 1,30);
67659:
67660: IF l_continue_with_lines THEN
67688: --
67689:
67690: -- No reversal code generated
67691:
67692: xla_ae_lines_pkg.SetAcctReversalAttrs
67693: (p_event_id => l_event_id
67694: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
67695: ,p_calculate_acctd_flag => l_calculate_acctd_flag
67696: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
67956:
67957: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
67958: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
67959: AND (l_actual_flag = 'A')) THEN
67960: XLA_AE_LINES_PKG.CreateGainOrLossLines(
67961: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
67962: ,p_application_id => p_application_id
67963: ,p_amb_context_code => 'DEFAULT'
67964: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
67989: END IF;
67990: END IF;
67991:
67992: END LOOP;
67993: l_result := XLA_AE_LINES_PKG.InsertLines ;
67994: end loop;
67995: close line_cur;
67996:
67997:
68491: l_first_event_id NUMBER;
68492: l_last_event_id NUMBER;
68493:
68494: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
68495: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
68496: --
68497: --
68498: l_result BOOLEAN := TRUE;
68499: l_rows NUMBER := 1000;
68753: EXIT WHEN l_array_entity_id.COUNT = 0;
68754:
68755: -- initialize arrays
68756: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
68757: XLA_AE_LINES_PKG.g_rec_lines := NULL;
68758:
68759: --
68760: -- Bug 4458708
68761: --
68758:
68759: --
68760: -- Bug 4458708
68761: --
68762: XLA_AE_LINES_PKG.g_LineNumber := 0;
68763:
68764:
68765: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
68766: g_last_hdr_idx := l_array_event_id.LAST;
68901: --
68902: -- following sets the accounting attributes needed to reverse
68903: -- accounting for a distributeion
68904: --
68905: xla_ae_lines_pkg.SetTrxReversalAttrs
68906: (p_event_id => l_event_id
68907: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
68908: ,p_trx_reversal_source => l_trx_reversal_source);
68909:
68933: --
68934: -- insert dummy rows into lines gt table that were created due to
68935: -- transaction reversals
68936: --
68937: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
68938: l_result := XLA_AE_LINES_PKG.InsertLines;
68939: END IF;
68940:
68941: --
68934: -- insert dummy rows into lines gt table that were created due to
68935: -- transaction reversals
68936: --
68937: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
68938: l_result := XLA_AE_LINES_PKG.InsertLines;
68939: END IF;
68940:
68941: --
68942: -- reset the temp_line_num for each set of events fetched from header
68942: -- reset the temp_line_num for each set of events fetched from header
68943: -- cursor rather than doing it for each new event in line cursor
68944: -- Bug 3939231
68945: --
68946: xla_ae_lines_pkg.g_temp_line_num := 0;
68947:
68948:
68949:
68950: --
69009: END IF;
69010: --
69011: EXIT WHEN l_array_entity_id.count = 0;
69012:
69013: XLA_AE_LINES_PKG.g_rec_lines := null;
69014:
69015: --
69016: -- Bug 4458708
69017: --
69014:
69015: --
69016: -- Bug 4458708
69017: --
69018: XLA_AE_LINES_PKG.g_LineNumber := 0;
69019: --
69020: --
69021:
69022: FOR Idx IN 1..l_array_event_id.count LOOP
69086:
69087:
69088:
69089: --
69090: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
69091:
69092: l_acct_reversal_source := SUBSTR(NULL, 1,30);
69093:
69094: IF l_continue_with_lines THEN
69122: --
69123:
69124: -- No reversal code generated
69125:
69126: xla_ae_lines_pkg.SetAcctReversalAttrs
69127: (p_event_id => l_event_id
69128: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
69129: ,p_calculate_acctd_flag => l_calculate_acctd_flag
69130: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
69202:
69203: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
69204: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
69205: AND (l_actual_flag = 'A')) THEN
69206: XLA_AE_LINES_PKG.CreateGainOrLossLines(
69207: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
69208: ,p_application_id => p_application_id
69209: ,p_amb_context_code => 'DEFAULT'
69210: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
69235: END IF;
69236: END IF;
69237:
69238: END LOOP;
69239: l_result := XLA_AE_LINES_PKG.InsertLines ;
69240: end loop;
69241: close line_cur;
69242:
69243:
69788: l_first_event_id NUMBER;
69789: l_last_event_id NUMBER;
69790:
69791: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
69792: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
69793: --
69794: --
69795: l_result BOOLEAN := TRUE;
69796: l_rows NUMBER := 1000;
70084: EXIT WHEN l_array_entity_id.COUNT = 0;
70085:
70086: -- initialize arrays
70087: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
70088: XLA_AE_LINES_PKG.g_rec_lines := NULL;
70089:
70090: --
70091: -- Bug 4458708
70092: --
70089:
70090: --
70091: -- Bug 4458708
70092: --
70093: XLA_AE_LINES_PKG.g_LineNumber := 0;
70094:
70095:
70096: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
70097: g_last_hdr_idx := l_array_event_id.LAST;
70225: --
70226: -- following sets the accounting attributes needed to reverse
70227: -- accounting for a distributeion
70228: --
70229: xla_ae_lines_pkg.SetTrxReversalAttrs
70230: (p_event_id => l_event_id
70231: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
70232: ,p_trx_reversal_source => l_trx_reversal_source);
70233:
70257: --
70258: -- insert dummy rows into lines gt table that were created due to
70259: -- transaction reversals
70260: --
70261: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
70262: l_result := XLA_AE_LINES_PKG.InsertLines;
70263: END IF;
70264:
70265: --
70258: -- insert dummy rows into lines gt table that were created due to
70259: -- transaction reversals
70260: --
70261: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
70262: l_result := XLA_AE_LINES_PKG.InsertLines;
70263: END IF;
70264:
70265: --
70266: -- reset the temp_line_num for each set of events fetched from header
70266: -- reset the temp_line_num for each set of events fetched from header
70267: -- cursor rather than doing it for each new event in line cursor
70268: -- Bug 3939231
70269: --
70270: xla_ae_lines_pkg.g_temp_line_num := 0;
70271:
70272:
70273:
70274: --
70342: END IF;
70343: --
70344: EXIT WHEN l_array_entity_id.count = 0;
70345:
70346: XLA_AE_LINES_PKG.g_rec_lines := null;
70347:
70348: --
70349: -- Bug 4458708
70350: --
70347:
70348: --
70349: -- Bug 4458708
70350: --
70351: XLA_AE_LINES_PKG.g_LineNumber := 0;
70352: --
70353: --
70354:
70355: FOR Idx IN 1..l_array_event_id.count LOOP
70419:
70420:
70421:
70422: --
70423: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
70424:
70425: l_acct_reversal_source := SUBSTR(NULL, 1,30);
70426:
70427: IF l_continue_with_lines THEN
70455: --
70456:
70457: -- No reversal code generated
70458:
70459: xla_ae_lines_pkg.SetAcctReversalAttrs
70460: (p_event_id => l_event_id
70461: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
70462: ,p_calculate_acctd_flag => l_calculate_acctd_flag
70463: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
70934:
70935: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
70936: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
70937: AND (l_actual_flag = 'A')) THEN
70938: XLA_AE_LINES_PKG.CreateGainOrLossLines(
70939: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
70940: ,p_application_id => p_application_id
70941: ,p_amb_context_code => 'DEFAULT'
70942: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
70967: END IF;
70968: END IF;
70969:
70970: END LOOP;
70971: l_result := XLA_AE_LINES_PKG.InsertLines ;
70972: end loop;
70973: close line_cur;
70974:
70975:
71474: l_first_event_id NUMBER;
71475: l_last_event_id NUMBER;
71476:
71477: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
71478: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
71479: --
71480: --
71481: l_result BOOLEAN := TRUE;
71482: l_rows NUMBER := 1000;
71739: EXIT WHEN l_array_entity_id.COUNT = 0;
71740:
71741: -- initialize arrays
71742: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
71743: XLA_AE_LINES_PKG.g_rec_lines := NULL;
71744:
71745: --
71746: -- Bug 4458708
71747: --
71744:
71745: --
71746: -- Bug 4458708
71747: --
71748: XLA_AE_LINES_PKG.g_LineNumber := 0;
71749:
71750:
71751: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
71752: g_last_hdr_idx := l_array_event_id.LAST;
71887: --
71888: -- following sets the accounting attributes needed to reverse
71889: -- accounting for a distributeion
71890: --
71891: xla_ae_lines_pkg.SetTrxReversalAttrs
71892: (p_event_id => l_event_id
71893: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
71894: ,p_trx_reversal_source => l_trx_reversal_source);
71895:
71919: --
71920: -- insert dummy rows into lines gt table that were created due to
71921: -- transaction reversals
71922: --
71923: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
71924: l_result := XLA_AE_LINES_PKG.InsertLines;
71925: END IF;
71926:
71927: --
71920: -- insert dummy rows into lines gt table that were created due to
71921: -- transaction reversals
71922: --
71923: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
71924: l_result := XLA_AE_LINES_PKG.InsertLines;
71925: END IF;
71926:
71927: --
71928: -- reset the temp_line_num for each set of events fetched from header
71928: -- reset the temp_line_num for each set of events fetched from header
71929: -- cursor rather than doing it for each new event in line cursor
71930: -- Bug 3939231
71931: --
71932: xla_ae_lines_pkg.g_temp_line_num := 0;
71933:
71934:
71935:
71936: --
71996: END IF;
71997: --
71998: EXIT WHEN l_array_entity_id.count = 0;
71999:
72000: XLA_AE_LINES_PKG.g_rec_lines := null;
72001:
72002: --
72003: -- Bug 4458708
72004: --
72001:
72002: --
72003: -- Bug 4458708
72004: --
72005: XLA_AE_LINES_PKG.g_LineNumber := 0;
72006: --
72007: --
72008:
72009: FOR Idx IN 1..l_array_event_id.count LOOP
72073:
72074:
72075:
72076: --
72077: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
72078:
72079: l_acct_reversal_source := SUBSTR(NULL, 1,30);
72080:
72081: IF l_continue_with_lines THEN
72109: --
72110:
72111: -- No reversal code generated
72112:
72113: xla_ae_lines_pkg.SetAcctReversalAttrs
72114: (p_event_id => l_event_id
72115: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
72116: ,p_calculate_acctd_flag => l_calculate_acctd_flag
72117: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
72415:
72416: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
72417: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
72418: AND (l_actual_flag = 'A')) THEN
72419: XLA_AE_LINES_PKG.CreateGainOrLossLines(
72420: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
72421: ,p_application_id => p_application_id
72422: ,p_amb_context_code => 'DEFAULT'
72423: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
72448: END IF;
72449: END IF;
72450:
72451: END LOOP;
72452: l_result := XLA_AE_LINES_PKG.InsertLines ;
72453: end loop;
72454: close line_cur;
72455:
72456:
72950: l_first_event_id NUMBER;
72951: l_last_event_id NUMBER;
72952:
72953: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
72954: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
72955: --
72956: --
72957: l_result BOOLEAN := TRUE;
72958: l_rows NUMBER := 1000;
73212: EXIT WHEN l_array_entity_id.COUNT = 0;
73213:
73214: -- initialize arrays
73215: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
73216: XLA_AE_LINES_PKG.g_rec_lines := NULL;
73217:
73218: --
73219: -- Bug 4458708
73220: --
73217:
73218: --
73219: -- Bug 4458708
73220: --
73221: XLA_AE_LINES_PKG.g_LineNumber := 0;
73222:
73223:
73224: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
73225: g_last_hdr_idx := l_array_event_id.LAST;
73360: --
73361: -- following sets the accounting attributes needed to reverse
73362: -- accounting for a distributeion
73363: --
73364: xla_ae_lines_pkg.SetTrxReversalAttrs
73365: (p_event_id => l_event_id
73366: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
73367: ,p_trx_reversal_source => l_trx_reversal_source);
73368:
73392: --
73393: -- insert dummy rows into lines gt table that were created due to
73394: -- transaction reversals
73395: --
73396: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
73397: l_result := XLA_AE_LINES_PKG.InsertLines;
73398: END IF;
73399:
73400: --
73393: -- insert dummy rows into lines gt table that were created due to
73394: -- transaction reversals
73395: --
73396: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
73397: l_result := XLA_AE_LINES_PKG.InsertLines;
73398: END IF;
73399:
73400: --
73401: -- reset the temp_line_num for each set of events fetched from header
73401: -- reset the temp_line_num for each set of events fetched from header
73402: -- cursor rather than doing it for each new event in line cursor
73403: -- Bug 3939231
73404: --
73405: xla_ae_lines_pkg.g_temp_line_num := 0;
73406:
73407:
73408:
73409: --
73468: END IF;
73469: --
73470: EXIT WHEN l_array_entity_id.count = 0;
73471:
73472: XLA_AE_LINES_PKG.g_rec_lines := null;
73473:
73474: --
73475: -- Bug 4458708
73476: --
73473:
73474: --
73475: -- Bug 4458708
73476: --
73477: XLA_AE_LINES_PKG.g_LineNumber := 0;
73478: --
73479: --
73480:
73481: FOR Idx IN 1..l_array_event_id.count LOOP
73545:
73546:
73547:
73548: --
73549: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
73550:
73551: l_acct_reversal_source := SUBSTR(NULL, 1,30);
73552:
73553: IF l_continue_with_lines THEN
73581: --
73582:
73583: -- No reversal code generated
73584:
73585: xla_ae_lines_pkg.SetAcctReversalAttrs
73586: (p_event_id => l_event_id
73587: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
73588: ,p_calculate_acctd_flag => l_calculate_acctd_flag
73589: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
73661:
73662: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
73663: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
73664: AND (l_actual_flag = 'A')) THEN
73665: XLA_AE_LINES_PKG.CreateGainOrLossLines(
73666: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
73667: ,p_application_id => p_application_id
73668: ,p_amb_context_code => 'DEFAULT'
73669: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
73694: END IF;
73695: END IF;
73696:
73697: END LOOP;
73698: l_result := XLA_AE_LINES_PKG.InsertLines ;
73699: end loop;
73700: close line_cur;
73701:
73702:
74196: l_first_event_id NUMBER;
74197: l_last_event_id NUMBER;
74198:
74199: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
74200: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
74201: --
74202: --
74203: l_result BOOLEAN := TRUE;
74204: l_rows NUMBER := 1000;
74458: EXIT WHEN l_array_entity_id.COUNT = 0;
74459:
74460: -- initialize arrays
74461: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
74462: XLA_AE_LINES_PKG.g_rec_lines := NULL;
74463:
74464: --
74465: -- Bug 4458708
74466: --
74463:
74464: --
74465: -- Bug 4458708
74466: --
74467: XLA_AE_LINES_PKG.g_LineNumber := 0;
74468:
74469:
74470: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
74471: g_last_hdr_idx := l_array_event_id.LAST;
74606: --
74607: -- following sets the accounting attributes needed to reverse
74608: -- accounting for a distributeion
74609: --
74610: xla_ae_lines_pkg.SetTrxReversalAttrs
74611: (p_event_id => l_event_id
74612: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
74613: ,p_trx_reversal_source => l_trx_reversal_source);
74614:
74638: --
74639: -- insert dummy rows into lines gt table that were created due to
74640: -- transaction reversals
74641: --
74642: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
74643: l_result := XLA_AE_LINES_PKG.InsertLines;
74644: END IF;
74645:
74646: --
74639: -- insert dummy rows into lines gt table that were created due to
74640: -- transaction reversals
74641: --
74642: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
74643: l_result := XLA_AE_LINES_PKG.InsertLines;
74644: END IF;
74645:
74646: --
74647: -- reset the temp_line_num for each set of events fetched from header
74647: -- reset the temp_line_num for each set of events fetched from header
74648: -- cursor rather than doing it for each new event in line cursor
74649: -- Bug 3939231
74650: --
74651: xla_ae_lines_pkg.g_temp_line_num := 0;
74652:
74653:
74654:
74655: --
74714: END IF;
74715: --
74716: EXIT WHEN l_array_entity_id.count = 0;
74717:
74718: XLA_AE_LINES_PKG.g_rec_lines := null;
74719:
74720: --
74721: -- Bug 4458708
74722: --
74719:
74720: --
74721: -- Bug 4458708
74722: --
74723: XLA_AE_LINES_PKG.g_LineNumber := 0;
74724: --
74725: --
74726:
74727: FOR Idx IN 1..l_array_event_id.count LOOP
74791:
74792:
74793:
74794: --
74795: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
74796:
74797: l_acct_reversal_source := SUBSTR(NULL, 1,30);
74798:
74799: IF l_continue_with_lines THEN
74827: --
74828:
74829: -- No reversal code generated
74830:
74831: xla_ae_lines_pkg.SetAcctReversalAttrs
74832: (p_event_id => l_event_id
74833: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
74834: ,p_calculate_acctd_flag => l_calculate_acctd_flag
74835: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
74907:
74908: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
74909: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
74910: AND (l_actual_flag = 'A')) THEN
74911: XLA_AE_LINES_PKG.CreateGainOrLossLines(
74912: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
74913: ,p_application_id => p_application_id
74914: ,p_amb_context_code => 'DEFAULT'
74915: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
74940: END IF;
74941: END IF;
74942:
74943: END LOOP;
74944: l_result := XLA_AE_LINES_PKG.InsertLines ;
74945: end loop;
74946: close line_cur;
74947:
74948:
75473: l_first_event_id NUMBER;
75474: l_last_event_id NUMBER;
75475:
75476: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
75477: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
75478: --
75479: --
75480: l_result BOOLEAN := TRUE;
75481: l_rows NUMBER := 1000;
75756: EXIT WHEN l_array_entity_id.COUNT = 0;
75757:
75758: -- initialize arrays
75759: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
75760: XLA_AE_LINES_PKG.g_rec_lines := NULL;
75761:
75762: --
75763: -- Bug 4458708
75764: --
75761:
75762: --
75763: -- Bug 4458708
75764: --
75765: XLA_AE_LINES_PKG.g_LineNumber := 0;
75766:
75767:
75768: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
75769: g_last_hdr_idx := l_array_event_id.LAST;
75906: --
75907: -- following sets the accounting attributes needed to reverse
75908: -- accounting for a distributeion
75909: --
75910: xla_ae_lines_pkg.SetTrxReversalAttrs
75911: (p_event_id => l_event_id
75912: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
75913: ,p_trx_reversal_source => l_trx_reversal_source);
75914:
75938: --
75939: -- insert dummy rows into lines gt table that were created due to
75940: -- transaction reversals
75941: --
75942: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
75943: l_result := XLA_AE_LINES_PKG.InsertLines;
75944: END IF;
75945:
75946: --
75939: -- insert dummy rows into lines gt table that were created due to
75940: -- transaction reversals
75941: --
75942: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
75943: l_result := XLA_AE_LINES_PKG.InsertLines;
75944: END IF;
75945:
75946: --
75947: -- reset the temp_line_num for each set of events fetched from header
75947: -- reset the temp_line_num for each set of events fetched from header
75948: -- cursor rather than doing it for each new event in line cursor
75949: -- Bug 3939231
75950: --
75951: xla_ae_lines_pkg.g_temp_line_num := 0;
75952:
75953:
75954:
75955: --
76018: END IF;
76019: --
76020: EXIT WHEN l_array_entity_id.count = 0;
76021:
76022: XLA_AE_LINES_PKG.g_rec_lines := null;
76023:
76024: --
76025: -- Bug 4458708
76026: --
76023:
76024: --
76025: -- Bug 4458708
76026: --
76027: XLA_AE_LINES_PKG.g_LineNumber := 0;
76028: --
76029: --
76030:
76031: FOR Idx IN 1..l_array_event_id.count LOOP
76095:
76096:
76097:
76098: --
76099: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
76100:
76101: l_acct_reversal_source := SUBSTR(NULL, 1,30);
76102:
76103: IF l_continue_with_lines THEN
76131: --
76132:
76133: -- No reversal code generated
76134:
76135: xla_ae_lines_pkg.SetAcctReversalAttrs
76136: (p_event_id => l_event_id
76137: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
76138: ,p_calculate_acctd_flag => l_calculate_acctd_flag
76139: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
76609:
76610: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
76611: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
76612: AND (l_actual_flag = 'A')) THEN
76613: XLA_AE_LINES_PKG.CreateGainOrLossLines(
76614: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
76615: ,p_application_id => p_application_id
76616: ,p_amb_context_code => 'DEFAULT'
76617: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
76642: END IF;
76643: END IF;
76644:
76645: END LOOP;
76646: l_result := XLA_AE_LINES_PKG.InsertLines ;
76647: end loop;
76648: close line_cur;
76649:
76650:
77165: l_first_event_id NUMBER;
77166: l_last_event_id NUMBER;
77167:
77168: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
77169: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
77170: --
77171: --
77172: l_result BOOLEAN := TRUE;
77173: l_rows NUMBER := 1000;
77436: EXIT WHEN l_array_entity_id.COUNT = 0;
77437:
77438: -- initialize arrays
77439: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
77440: XLA_AE_LINES_PKG.g_rec_lines := NULL;
77441:
77442: --
77443: -- Bug 4458708
77444: --
77441:
77442: --
77443: -- Bug 4458708
77444: --
77445: XLA_AE_LINES_PKG.g_LineNumber := 0;
77446:
77447:
77448: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
77449: g_last_hdr_idx := l_array_event_id.LAST;
77583: --
77584: -- following sets the accounting attributes needed to reverse
77585: -- accounting for a distributeion
77586: --
77587: xla_ae_lines_pkg.SetTrxReversalAttrs
77588: (p_event_id => l_event_id
77589: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
77590: ,p_trx_reversal_source => l_trx_reversal_source);
77591:
77615: --
77616: -- insert dummy rows into lines gt table that were created due to
77617: -- transaction reversals
77618: --
77619: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
77620: l_result := XLA_AE_LINES_PKG.InsertLines;
77621: END IF;
77622:
77623: --
77616: -- insert dummy rows into lines gt table that were created due to
77617: -- transaction reversals
77618: --
77619: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
77620: l_result := XLA_AE_LINES_PKG.InsertLines;
77621: END IF;
77622:
77623: --
77624: -- reset the temp_line_num for each set of events fetched from header
77624: -- reset the temp_line_num for each set of events fetched from header
77625: -- cursor rather than doing it for each new event in line cursor
77626: -- Bug 3939231
77627: --
77628: xla_ae_lines_pkg.g_temp_line_num := 0;
77629:
77630:
77631:
77632: --
77699: END IF;
77700: --
77701: EXIT WHEN l_array_entity_id.count = 0;
77702:
77703: XLA_AE_LINES_PKG.g_rec_lines := null;
77704:
77705: --
77706: -- Bug 4458708
77707: --
77704:
77705: --
77706: -- Bug 4458708
77707: --
77708: XLA_AE_LINES_PKG.g_LineNumber := 0;
77709: --
77710: --
77711:
77712: FOR Idx IN 1..l_array_event_id.count LOOP
77776:
77777:
77778:
77779: --
77780: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
77781:
77782: l_acct_reversal_source := SUBSTR(NULL, 1,30);
77783:
77784: IF l_continue_with_lines THEN
77812: --
77813:
77814: -- No reversal code generated
77815:
77816: xla_ae_lines_pkg.SetAcctReversalAttrs
77817: (p_event_id => l_event_id
77818: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
77819: ,p_calculate_acctd_flag => l_calculate_acctd_flag
77820: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
78316:
78317: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
78318: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
78319: AND (l_actual_flag = 'A')) THEN
78320: XLA_AE_LINES_PKG.CreateGainOrLossLines(
78321: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
78322: ,p_application_id => p_application_id
78323: ,p_amb_context_code => 'DEFAULT'
78324: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
78349: END IF;
78350: END IF;
78351:
78352: END LOOP;
78353: l_result := XLA_AE_LINES_PKG.InsertLines ;
78354: end loop;
78355: close line_cur;
78356:
78357:
79046: l_first_event_id NUMBER;
79047: l_last_event_id NUMBER;
79048:
79049: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
79050: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
79051: --
79052: --
79053: l_result BOOLEAN := TRUE;
79054: l_rows NUMBER := 1000;
79438: EXIT WHEN l_array_entity_id.COUNT = 0;
79439:
79440: -- initialize arrays
79441: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
79442: XLA_AE_LINES_PKG.g_rec_lines := NULL;
79443:
79444: --
79445: -- Bug 4458708
79446: --
79443:
79444: --
79445: -- Bug 4458708
79446: --
79447: XLA_AE_LINES_PKG.g_LineNumber := 0;
79448:
79449:
79450: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
79451: g_last_hdr_idx := l_array_event_id.LAST;
79595: --
79596: -- following sets the accounting attributes needed to reverse
79597: -- accounting for a distributeion
79598: --
79599: xla_ae_lines_pkg.SetTrxReversalAttrs
79600: (p_event_id => l_event_id
79601: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
79602: ,p_trx_reversal_source => l_trx_reversal_source);
79603:
79627: --
79628: -- insert dummy rows into lines gt table that were created due to
79629: -- transaction reversals
79630: --
79631: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
79632: l_result := XLA_AE_LINES_PKG.InsertLines;
79633: END IF;
79634:
79635: --
79628: -- insert dummy rows into lines gt table that were created due to
79629: -- transaction reversals
79630: --
79631: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
79632: l_result := XLA_AE_LINES_PKG.InsertLines;
79633: END IF;
79634:
79635: --
79636: -- reset the temp_line_num for each set of events fetched from header
79636: -- reset the temp_line_num for each set of events fetched from header
79637: -- cursor rather than doing it for each new event in line cursor
79638: -- Bug 3939231
79639: --
79640: xla_ae_lines_pkg.g_temp_line_num := 0;
79641:
79642:
79643:
79644: --
79732: END IF;
79733: --
79734: EXIT WHEN l_array_entity_id.count = 0;
79735:
79736: XLA_AE_LINES_PKG.g_rec_lines := null;
79737:
79738: --
79739: -- Bug 4458708
79740: --
79737:
79738: --
79739: -- Bug 4458708
79740: --
79741: XLA_AE_LINES_PKG.g_LineNumber := 0;
79742: --
79743: --
79744:
79745: FOR Idx IN 1..l_array_event_id.count LOOP
79809:
79810:
79811:
79812: --
79813: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
79814:
79815: l_acct_reversal_source := SUBSTR(NULL, 1,30);
79816:
79817: IF l_continue_with_lines THEN
79845: --
79846:
79847: -- No reversal code generated
79848:
79849: xla_ae_lines_pkg.SetAcctReversalAttrs
79850: (p_event_id => l_event_id
79851: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
79852: ,p_calculate_acctd_flag => l_calculate_acctd_flag
79853: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
81321:
81322: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
81323: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
81324: AND (l_actual_flag = 'A')) THEN
81325: XLA_AE_LINES_PKG.CreateGainOrLossLines(
81326: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
81327: ,p_application_id => p_application_id
81328: ,p_amb_context_code => 'DEFAULT'
81329: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
81354: END IF;
81355: END IF;
81356:
81357: END LOOP;
81358: l_result := XLA_AE_LINES_PKG.InsertLines ;
81359: end loop;
81360: close line_cur;
81361:
81362:
81489:
81490: --
81491: -- initialize array of lines with NULL
81492: --
81493: xla_ae_lines_pkg.SetNullLine;
81494:
81495: --
81496: -- initialize header extract count -- Bug 4865292
81497: --